Archives

Famous Programmers From Adleman to Zimmermann

Sunday, June 29th, 2008

A graphical analysis of 222 famous programmers and the 400 projects they undertook which propelled them to fame. Graphs break down the projects that made them famous, the number of projects it took to become famous, and the relative numbers of men and women who make up this elite group of famous programmers.

The Essential Programming Language Toolbox

Sunday, June 22nd, 2008

Everybody has a different idea of which languages are important. And the answer really depends on who you are and what you believe is important. I came to programming through a theoretical computer science route which initially gave me a shallow understanding of a wide breadth of topics. In this school of […]

Sweet Hacks Vol II - Now With the Naked Game

Monday, June 2nd, 2008

Volume II of the increasingly popular sweet hacks series. In this edition you will find Star Wars, Twitter, Rubik’s cubes, webcams, Pong, Legos, and the ever popular Naked Game where you can watch code get naked. Don’t forget to vote for your own hack if you would like it to appear in the next edition of the sweet hacks series.

Become a More Satisfied Programmer. Today.

Monday, May 26th, 2008

In the first post in this series, I talked a bit about different indicators of job satisfaction and how you can rank your own job for each of those criteria. In this post I’ll list simple steps anyone can take to improve personal job satisfaction in each of these areas: quality of projects, work-life […]

Measuring Programmer Job Satisfaction

Monday, May 5th, 2008

Are you satisfied with your job? Are you satisfied with where your career path is taking you? These are important questions, and I try to take time to think about this every 6 months or so. Its usually trivial to make a general statement rating job satisfaction: “Yeah I like my job.” […]

E2: The (NP-Complete) Kids’ Game with the $2 Million Prize

Monday, April 21st, 2008

Eternity 2 (E2) is an edge-matching puzzle of 256 pieces with an open $2 million prize for the first person to solve it. This post looks at 2 solution finders, and gives runtimes on 3 different benchmarks. The general class of edge-matching problems is NP-Complete, but it in unknown if there are aspects of E2 that can be exploited in order to make it more tractable.

The Top 9½ In a Hacker’s Bookshelf

Friday, April 4th, 2008

Every hacker should have a good solid dead tree library to draw ideas from and use as reference material. This list has a bit of everything - textbooks you will encounter at top tier computer science universities, books giving insight into the industry, and references you shouldn’t be caught without. It is a list of hackers’ classics.

Sweet Hacks - Vol I

Thursday, March 13th, 2008

Volume I of Sweet Hacks - a regular series highlighting clever pieces of code, innovative ways of solving a technical problem, or just a cool use of technology. I put together these 5 hacks that I think are really sweet. Don’t forget to nominate your own sweet hacks for the next issue.

How to Write Original Jokes (Or Have A Computer Do It For You)

Saturday, March 1st, 2008

Code walkthrough and explanation of a Common Lisp joke generator. Create your own original jokes by changing the vocabulary. All of the jokes are of the form: “What do you get when you cross X and Y?” Some of the jokes are pretty good, others are bad, and some just make you go “huh?”

J2EE Application Environment Optimization Checklist

Friday, February 15th, 2008

Optimizing J2EE applications is hard. Even if all of your algorithms have been analyzed in big-O notation and finely tuned, you can have abysmal performance due to a poorly configured environment. J2EE applications depend on many lower layers which all must be properly optimized in order to give good overall performance. This page gives a checklist of optimization tips organized by layer. It includes optimizations for the HTTP Server, Application Server, Java frameworks, database, and the application itself. This page isn’t intended to be a comprehensive optimization guide; it is a checklist of the most effective optimizations I have found that can be applied in most situations. This checklist is a good place to start before more focused optimizations - and you may even find that nothing more is required.

Ravatar Wordpress plugin for randam avatars

Sunday, January 27th, 2008

This is the release page for the Ravatar Wordpress plugin. The Ravatar plugin helps build your community by giving commenters a unique “face.” The Ravatar plugin will display a randomly generated avatar for each unique visitor that leaves a comment. The types of avatars that are generated are customizable, so that the blog owner can choose to generate avatars that match the color scheme or theme of the site. Visitors can optionally choose their own avatar by setting up a Gravatar.

Top 7 Development Tools

Monday, January 14th, 2008

Every developer should have a collection of tools that at their disposal to facilitate project planning stages, speed development, automate testing and building, organize code versions, and otherwise make life easier. Here is a list of the standard tools in my toolbox that make me more productive. Almost all of them are F/OSS and multi-platform. This list has a slight Java slant, but most of these tools are language independent.

Using Axis to generate Java files from WSDLs

Saturday, December 29th, 2007

Apache Axis is an implementation of the SOAP protocol. It is a framework for constructing SOAP clients and servers. A Java client application is able to use a Web Service by calling Java stub classes created from WSDL files. These WSDL files are made availible by the SOAP server application. As an example, we will go through the process of creating a jar file from WSDLs using the Yahoo’s Enterprise Web Services (EWS). The EWS platform makes Yahoo’s Search Marketing API available.