Site uses cookies to provide basic functionality.
Javascript rendering is set to off by default when visiting the site via .onion and .i2p domains. It can be enabled back again in user's settings section. Javascript rendering set to off means, that you can disable javascript in your browser now and the site will remain functional.
There is also IRC server now available via native IRC clients or non javascript web based one.
Fonts can be adjusted in user's settings section as well.
Check FAQ for more.

OK

The thoughtful bodepd has been kind enough to help me get my puppet-gluster module off the ground and publicized a bit too. My first few commits have been all clean up to get my initial hacking up to snuff with the puppet style guidelines. Sadly, I love indenting my code with tabs, and this is against the puppet rules :( http://www.emacswiki.org/emacs/TabsSpacesBoth I’ll be accepting patches by email, but I’d prefer discussion firs..

Back in the 1990s, you could look smart my talking about the “Information Superhighway” (the Internet). In the early 2000s, the catch-phase of the day was “eCommerce” (buying crap on the Internet), and in the late 2000s non-technical managers would often toot about “Web 2.0” (an imaginary Internet that basically is the current Internet, but with more content). Around 2010, non-technical managers, CIOs, and executives were struggling to f..

Back in the 1990s, you could look smart my talking about the “Information Superhighway” (the Internet). In the early 2000s, the catch-phase of the day was “eCommerce” (buying crap on the Internet), and in the late 2000s non-technical managers would often toot about “Web 2.0” (an imaginary Internet that basically is the current Internet, but with more content). Around 2010, non-technical managers, CIOs, and executives were struggling to f..

Problem: Write a program that compares two sequences of differing lengths for similarity. Solution: (In Python) import math def dynamicTimeWarp(seqA, seqB, d = lambda x,y: abs(x-y)): # create the cost matrix numRows, numCols = len(seqA), len(seqB) cost = [[0 for _ in range(numCols)] for _ in range(numRows)] # initialize the first row and column cost[0][0] = d(seqA[0], seqB[0]) for i in xrange(1, numRows): cost[i][0] = cost[i-1][0] + d(seqA[..

Problem: Write a program that compares two sequences of differing lengths for similarity. Solution: (In Python) import math def dynamicTimeWarp(seqA, seqB, d = lambda x,y: abs(x-y)): # create the cost matrix numRows, numCols = len(seqA), len(seqB) cost = [[0 for _ in range(numCols)] for _ in range(numRows)] # initialize the first row and column cost[0][0] = d(seqA[0], seqB[0]) for i in xrange(1, numRows): cost[i][0] = cost[i-1][0] + d(seqA[..

Problem: Write a program that compares two sequences of differing lengths for similarity. Solution: (In Python) import math def dynamicTimeWarp(seqA, seqB, d = lambda x,y: abs(x-y)): # create the cost matrix numRows, numCols = len(seqA), len(seqB) cost = [[0 for _ in range(numCols)] for _ in range(numRows)] # initialize the first row and column cost[0][0] = d(seqA[0], seqB[0]) for i in xrange(1, numRows): cost[i][0] = cost[i-1][0] + d(seqA[..


Unfortunately I will not make it to GUADEC this year. However, here is something new for GNOME developers: I wrote last year how GObject Introspection was coming to Node.js . Back then the API was still quite bad, and it was limited in what you could do with it. Since then things have moved forward quite a bit, and today Piotras released version 0.1.0 of node-gir . This allows you to interface with any GObject Introspection capabl....

I am an avid cobbler + puppet user. This allows me to rely on my cobbler server and puppet manifests to describe how servers/workstations are setup. I only backup my configs and data, and I regenerate failed machines PRN. I’ll be publishing my larger cobbler+puppet infrastructure in the future once it’s been cleaned up a bit, but for now I figured I’d post my work-in-progress “puppet-gluster” module, since it seems there’s a real intere..

I am an avid cobbler + puppet user. This allows me to rely on my cobbler server and puppet manifests to describe how servers/workstations are setup. I only backup my configs and data, and I regenerate failed machines PRN. I’ll be publishing my larger cobbler+puppet infrastructure in the future once it’s been cleaned up a bit, but for now I figured I’d post my work-in-progress “puppet-gluster” module, since it seems there’s a real intere..

Many thanks to johnmark in #gluster for syndicating my “gluster” tagged blog posts on http://www.gluster.org/blog/ I aim to keep these posts technical and informative, aimed mostly at other sysadmins and gluster users. Please don’t  be shy to comment on my writing style or to let me know if you need more information about a particular subject. If you have any ideas about things you’d like me to write about, let me know and I’ll try to..

Many thanks to johnmark in #gluster for syndicating my “gluster” tagged blog posts on http://www.gluster.org/blog/ I aim to keep these posts technical and informative, aimed mostly at other sysadmins and gluster users. Please don’t  be shy to comment on my writing style or to let me know if you need more information about a particular subject. If you have any ideas about things you’d like me to write about, let me know and I’ll try to..

We were taught to categorize, but we know that searching beats sorting We were taught that information is scare, but we know that the real problem is too much information, not too little. We were taught that information must be protected from being viewed, but we know that the greatest threat to information is irrelevancy We were taught to estimate and plan what the marked wants, but we know that our customers don’t behave according to our ..

SoundCloud is a polyglot company, and while we’ve always operated with Ruby on Rails at the top of our stack, we’ve got quite a wide variety…

Last week we at IKS organized a two-day hackathon for developers interested in Create.js , VIE , and in new tools for editing websites semantically. The original agenda for the event can be found from the event’s wiki page , and I believe we got it covered quite well. I’ve been to quite a lot of hackfests, and usually the first day is mostly spent by people arriving, figuring out the WiFi setup, and getting to know the development to....

SoundCloud is a polyglot company, and while we’ve always operated with Ruby on Rails at the top of our stack, we’ve got quite a wide variety…

Last week we at IKS organized a two-day hackathon for developers interested in Create.js , VIE , and in new tools for editing websites semantically. The original agenda for the event can be found from the event’s wiki page , and I believe we got it covered quite well. I’ve been to quite a lot of hackfests, and usually the first day is mostly spent by people arriving, figuring out the WiFi setup, and getting to know the development to....


I’ve been having some strange networking issues with gluster. “Eco__” from #gluster suggested I try an up to date Intel nic driver. Here are the steps I followed to make that happen. No news yet on if that solved the problem. Currently my system is using the igb (intel gigabit) driver. To find out what version you are running: # modinfo -F version igb 3.2.10-k I found a newer version from the supermicro ftp site . A download ..

I’ve been having some strange networking issues with gluster. “Eco__” from #gluster suggested I try an up to date Intel nic driver. Here are the steps I followed to make that happen. No news yet on if that solved the problem. Currently my system is using the igb (intel gigabit) driver. To find out what version you are running: # modinfo -F version igb 3.2.10-k I found a newer version from the supermicro ftp site . A download ..

As Lead Developer at my previous company I interviewed many Developers. I wanted to provide some advice to Developers on how to come off more positively. For the purposes of this post I , me and all other pronouns referring to myself refer to a hiring professional. Some Basics Up Front Google yourself. Google your email address, I will! There will be lots of Googling before you're hired. I am well versed in the darker Google arts....

As Lead Developer at my previous company I interviewed many Developers. I wanted to provide some advice to Developers on how to come off more positively. For the purposes of this post I , me and all other pronouns referring to myself refer to a hiring professional. Some Basics Up Front Google yourself. Google your email address, I will! There will be lots of Googling before you're hired. I am well versed in the darker Google arts....


For small and large applications there often comes a time where you’re busy creating an API. The API creation process usually takes the form of something like: Design your API, Implement your API, Test and Evaluate, Rinse and Repeat. Historically with implementing the API fully you can’t see how you truly feel about the result, causing this cycle to take longer than it should. Heroku Postgres has Dataclips , which (among other things) can ....

For small and large applications there often comes a time where you’re busy creating an API. The API creation process usually takes the form of something like: Design your API, Implement your API, Test and Evaluate, Rinse and Repeat. Historically with implementing the API fully you can’t see how you truly feel about the result, causing this cycle to take longer than it should. Heroku Postgres has Dataclips , which (among other things) can ....

For the last ~two or so years I’ve played and tested gluster on and off and hanging out in the awesome #gluster channel on Libera.chat . In case you haven’t heard, gluster was  acquired by RedHat back in October 2011. This post describes my current setup. I urge you to send your comments and suggestions for improvement. I’ll update this as needed. Hardware : Ideology: I wanted to build individual self-contained storage hosts. I didn’..

For the last ~two or so years I’ve played and tested gluster on and off and hanging out in the awesome #gluster channel on Libera.chat . In case you haven’t heard, gluster was  acquired by RedHat back in October 2011. This post describes my current setup. I urge you to send your comments and suggestions for improvement. I’ll update this as needed. Hardware : Ideology: I wanted to build individual self-contained storage hosts. I didn’..

I’m working on this idea, and I don’t know if it appeals to you guys. I’d like your input on whether this is something to explore further. Here’s the deal: I’ve encountered teams who, when working with SOA technologies have been dragged into the mud by the sheer complexity of their tools. I’ve only seen this in Java, but I’ve heard from some C# developers that they recognize the phenomenon there as well.

The blog zygote - blog.tjll.net - 13 years ago - eng
Figure 1: Another blog to read, why not? Putting together all the moving pieces to get this blog to work the way I wanted took a little while. In the interest of sharing how I did it in case this helps others, I thought I'd share the approach I took. Overview So, here's the way it goes down: I'm using jekyll to publish. If you're unfamiliar with it, jekyll essentially lets you write your pages as templates, and generate ....

Anti-Pattern - www.craigpardey.com - 13 years ago - eng

When I first started programming in object oriented languages I used inheritance to reduce code duplication. You know the deal - you have two classes that do the same sort of thing so you create an abstract superclass and extract the common code into methods in the superclass. Voilà. No more duplicated code. But I was unwittingly creating an untestable codebase. I have worked extensively with dependency injection containers over the las..

It’s often said that the Age of Information began on August 17, 1964 with the publication of Cooley and Tukey’s paper, “An Algorithm for the Machine Calculation of Complex Fourier Series.” They published a landmark algorithm which has since been called the Fast Fourier Transform algorithm, and has spawned countless variations. Specifically, it improved the best known computational bound on the discrete Fourier transform from $ O(n^2)$ to $ ..

It’s often said that the Age of Information began on August 17, 1964 with the publication of Cooley and Tukey’s paper, “An Algorithm for the Machine Calculation of Complex Fourier Series.” They published a landmark algorithm which has since been called the Fast Fourier Transform algorithm, and has spawned countless variations. Specifically, it improved the best known computational bound on the discrete Fourier transform from $ O(n^2)$ to $ ..

It’s often said that the Age of Information began on August 17, 1964 with the publication of Cooley and Tukey’s paper, “An Algorithm for the Machine Calculation of Complex Fourier Series.” They published a landmark algorithm which has since been called the Fast Fourier Transform algorithm, and has spawned countless variations. Specifically, it improved the best known computational bound on the discrete Fourier transform from $ O(n^2)$ to $ ..


Implement block support for UIMenuItem by swizzling the responder chain to enable cleaner API patterns.


Recently I fired off the spiders to pull in an additional 30,000 projects I was aware of and then added them to the index. The result being searchcode now has 3.8 billion lines of code indexed. The exact count being 3,863,756,553 lines. Of course the reason this is most exciting for me is that koders.com which is the default code search (now that Google Code search has been retired) has 3.3 billion lines of code index according to their web..

This post isn’t going to tell you that you should use MVC to structure your application. It isn’t going to tell you which framework to use. It’s not going to tell you to use CoffeeScript or MongoDB. But I’m going to talk about some small helpful things you can do to your Javascript application to make easier to develop and maintain. Naming Conventions Improperly naming your variables, functions and classes can make it nearly impossible....

This post isn’t going to tell you that you should use MVC to structure your application. It isn’t going to tell you which framework to use. It’s not going to tell you to use CoffeeScript or MongoDB. But I’m going to talk about some small helpful things you can do to your Javascript application to make easier to develop and maintain. Naming Conventions Improperly naming your variables, functions and classes can make it nearly impossible....

Took the past couple of days to make a rough Space Invaders clone. Learned lots. I ran into a bug once where the game got massively scaled up in the game window; haven’t been able to reproduce it but have a feeling it  may have had to do with something on my big PC as it’s been doing weird things and intermittently not loading HTML5 games or YouTube videos properly.



I’ve been getting some heat over the past short while when I talk about my Galaga arcade, because there are 2 different camps when it comes to pronouncing the word Galaga. You can either emphasize the first syllable: GAL-a-ga Or you can emphasize the second syllable: ga-LAG-a I’ve always emphasized the second syllable (ga-LAG-a). However, the Avengers movie came out this year, and Robert Downey Jr. (who plays Iron Man in the mov..

7 visitors online