Passed on through an IRC channel is Gay marriage: the database engineering perspective. Really it has almost nothing to do with Gay Marriage, but more the act of iterating through a (seemingly) simple problem for a database design. A good read.
Interesting new look at the IDE: Code Bubbles Project.
LumberJAPH (awesome title btw) has a preview of github explorer, a visualizer for github projects using the github API. Very cool.
The GitHub blog just Introducing GitHub Compare View. Nice way to view the differences between branches for projects hosted at GitHub.
My buddy Curtis wrote a good article on Why Rails Feels like a Developers Only Playground.
Yeah the guys I work with at the Fv.rb are joking, but otherwise it seems to be a mentality that goes through dev's heads. They can't design but don't want to take the bit of extra time to help someone get up to speed. Most designers are more than smart enough, and many are willing, to learn some new technologies if someone is willing to give them a helping hand.
I don't think that devs aren't willing to help someone learn, in fact, I think that the Rails (and indeed, programmers in general) are more than happy to help out.
However developers know how developers think, and helping out someone who knows how to program (sorry, but HTML and CSS isn't "programming") is a lot different than helping a non-developer. Speaking as someone who tried to help their drama major ex-girlfriend (not major drama ex-girlfriend, that came later) through a simple while loop to increment a variable, I can attest to you 100% that different people's brains work differently, and that creative people and programmer-type people sometimes have a huge chasm of grokking between them.
Rails doesn't feel like a designers playground because it's a web programming framework, designed by developers for developers, and if you ignore some of the cool CSS and HTML frameworks built in and around it, there's really not much there for designers doing designer work in rails. Maybe I'm just daft, but other than pointing to the directories where various templates are stored, and showing someone what loops look like and what to style, I'm not sure that rails has anything over any other framework design wise. IE: none.
Now designing a site is a completely different matter. You want a good, knows their shit designer like Curtis involved in your project from the start, and maybe that's what the rails community is missing, someone to help shape their programmatic designs based on good web design. This involves site setup, layout, page headers and meta-data, etc, but, IMHO, doesn't infringe much into the "programming" world.
OK, this is just awesome. Check out a few Reddit.com clones written in a variety of languages. Also note the comment to code ratio in the Perl example! ;)
Sweet little ruby gem (pardon the pun) to allow you to access RDoc via OSX's Dictionary.app. Very nice little hack! Thanks for passing it on @dkubb!
Great article on why you should Build an Application (Even if it Already Exists) as a programmer, especially if you're trying to learn something. There's been many many times in my question to learn say, Ruby on Rails where I've thought of a good idea (to me anyway) only to find that it already exists in 18 different forms already, so I've dismissed it as silly to re-invent the wheel. Good thoughts in Caleb's article.
Interesting looking Google TechTalk by Phusion on How They Built A More Efficient Ruby 1.8 Interpreter.
Great tutorial on how to Setup Ruby Enterprise Edition, nginx and Passenger (aka mod_rails) on Ubuntu. There are a bunch of nice subtle things that this tutorial goes through and learns you that you might not have gotten (or have had to search for anyway) with just doing a standard "apt-get install rails" on your shiny new Linux server. Wow, english is hard for me today.... "learns you"? Geez...
Every day that I am a programmer I am thankful that I don't have a job like figuring out The "Who Knows?" Code that this poor guy had to deal with.
*shudder*
Those who didn't get to go to RubyConf will be happy to know that the RubyConf 2009 videos are out.
In Coding Horror's Parsing Html The Cthulhu Way, you really get the idea that parsing HTML with regexes is a bad idea. From the article:
Every time you attempt to parse HTML with regular expressions, the unholy child weeps the blood of virgins, and Russian hackers pwn your webapp. Parsing HTML with regex summons tainted souls into the realm of the living.
For those of you who do your Ruby on Rails coding in an IDE, you'll be no doubt excited that JetBrains RubyMine is 2.0. Rubymine is a very cool app which I've been experimenting with for some of my projects. Very reasonably priced, and very complete if you read through the docs and check out the screencasts.
Coding Horror notes that Stack Overflow Careers: Amplifying Your Awesome has launched. This is a free CV hosting system which builds on their peer reputation system. Very cool idea.
JWZ writes up on his ongoing Kafka-esque nightmare of dealing with Palm and their App Catalog submission process. Lets just say he's not impressed.
Update: Fake Steve Jobs has weighed in on the conversation.
Check out this Whitespace Tutorial for a look at probably the most dastardly and horrible idea for a programming language, ever. So dastardly it might just work!
An awesome article / confessional on Dirty Coding Tricks used for PC and console gaming.
Pro Git is a free online book from the guys at GitHub (along with a dead tree version).
Holy crap, how cool is this!? Amidst all the rest of the 40th Anniversary of Man On The Moon fever comes the Apollo 11 mission's source code!
To commemorate this event the Command Module code (Comanche054) and Lunar Module code (Luminary099) have been transcribed from scanned images to run on yaAGC (an open source AGC emulator) by the Virtual AGC and AGS project.
If you think about it too hard, your mind will be blown. First of all, man walked on the freakin' moon. Secondly they did it 40 years ago. Lastly they did it with computers with less processing power than your phone. In fact, you can't even really compare your iPhone to the Apollo 11 computer, it's more like a quarter of the power of the original IBM XT, ie: about 1mhz.
As expected, the SDK for iPhone OS 3.0 is now available from the Apple Developer Connection. You don't need to join the $99 program to get access anymore, but you will of course have to have your Apple login setup.
Using Git with Vim is a great new article over at OSNews. It details some plugins for using Vim with GIT and other information. For those who don't know, GIT is the new hotness in source control, and Vim is the old hotness and best text editor ever. :)
Ever wondered how to Choose Between Two Great JavaScript Frameworks? This site gives some of the pros and cons of the MooTools and JQuery frameworks. Note: Written by the MooTools author.
Hivelogic has their list of Top 10 Programming Fonts. Some good ones in there, looking forward to installing them on my systems.
Found via digg: 20 Excellent JavaScript Navigation Techniques and Examples. Some very cool stuff in there for designers and web monkeys alike.
The Ruby on Rails hosting/provisioning service Heroku has just announced their Commercial Launch. The free service will remain, with users getting a "dyno" and database as they have been (and that system is still perfectly adequate for hosting smaller apps.
The Book of Ruby has been completed. 425 pages, 300 Sample Programs, free for download on the linked page.
Visualising Sorting Algorithms. For all your nerdy needs :)
Coding Horror: The Eight Levels of Programmers. Funny cause it's true.
Via reddit. Seems the folks producing the E Text Editor (think TextMate for Windows) are Releasing the Source on github. This is cool, as TextMate is the de-facto programming editor for Mac, and it'll be cool to see something with it's power (and from the screencast on the main page, pretty much the same capabilities) out there for Linux and Mac as well. From the article it doesn't look like it's purely an open source license (a la GPL and friends), but it's a great start, and I'm excited to see what happens with this.
Any Ruby on Rails programmers out there will know that version 2.3 was just released.... Railspikes has 10 Cool Things in Rails 2.3 to wet your appetite about what's new in this release.
Awesome article from the Microsoft site on Reverse Engineering the Twelve Days of Christmas written in obfuscated C code (circa 1998).
Looks like Subversion1.6 has been released. Hit the link for changes/info/etc.
Along with the free Rails Magazine available, check out The Rubyist which has two issues and a free PDF download.
If you're interested in Ruby on Rails, you'll be happy to know that Rails Magazine Issue 1 is now available. Free digital download, or you can order a dead-tree version.
xkcd - A Webcomic - Not Enough Work
I'm not normally one for funky javascript effects, but I have to say that this is very cool.
Remember a few years ago when Ruby on Rails first made itself known and the canonical example video was the one where a weblog was written in 15 minutes? Ahh.... memories. Good to know that there is a New 15-minute blog video on Rails 2.2 to do the same thing with all the new shiny stuff in 2.2.
Not much to say here, Rails 2.2 has escaped from the developers.
Rails 2.2 is finally done after we cleared the last issues from the release candidate program. This release contains an long list of fixes, improvements, and additions that’ll make everything Rails smoother and better, but we also have a number of star player features to parade this time.
Course, I'm still in chapter 1 of my Rails 1.1 book, so this is way too much for me to process on how good or bad it is :)
Found a link on reddit with examples and code for 33 String Matching Algorithms. Even if you're not into deep coding, it's very cool to see just what goes into something which seems fairly simple and is so common in computers.
Joel on Software has launched a new project called Stack Overflow... basically an answer to the crappy results out there for programming problems.
So the links. Here's the blog and the actual site. It basically looks like "digg for programming problems" which I'm undecided if this is just a following of a fad or a decent idea. On one hand if it was digg for programmers it'd be lame, but for programming problems it has potential I believe.
7 Principles Of Clean And Optimized CSS Code.
Couple of links for the Ruby folks out there. First up is 6 Optimization Tips for Ruby MRI with some nice and simple suggestions for optimization. Next is an excellent list of resources for getting up to speed with Rails 2.1.
Any rails programmers out there want to let me know what the best way to keep up with the ruby and rails community is? It seems that every week the way to do things (plugins, svn vs git, github, etc) changes way more rapidly than it's possible to learn as a newbie. Should I just stick with reading and learning from the RoR 1.2.x book I have, or try to learn from whatever the latest-and-greatest RoR technique of the day is?
Very cool article on techcrunch about How To Build A Web App in Four Days For $10,000. It's actually more interesting in the way of viewing what tools are suggested and the idea of taking a break for the grind of work to do something quick and creative to re-invigorate a development team.
I remember doing this once long long ago while working in the basement of the company-that-was-Netmaster... at some point or another the boss (that'd be now-windows-security-expert Dana for those not familiar with my work history) got into a discussion with someone on some mailing list and we ended up taking the afternoon off to build a web portal. It never actually went anywhere, but it was fun, fast, and a good mental exercise to get the juices going again. I recall doing this again years later in the company that Netmaster morphed into to create a three factor authentication addon for our security product, but it was far more stressed, more work, less fun, and that it never went anywhere was kinda a pissoff cause it was a really cool system. Ah well, live and learn :)
Riding Rails: Free Rails 2.1 Book - via the riding rails blog.
Coding Horror has a nice article on Understanding Model-View-Controller. Well worth the read for people not so up on it like myself.
Nice simple chat wall Merb tutorial, giving you a full demo from start to finish using Merb, a Ruby on Rails type web framework.
There's been some benchmarking doing a Performance comparison: Rails 1.2.6 vs 2.0.2. According to the blog entry rails 2.0 gives about a 30-50% speed increase. Good to see that things are getting faster as they mature!
Interesting looking set of articles on Rails 2.0 and Scaffolding Step by Step. So far there are 2 parts of fairly in depth and well written information about Ruby on Rails 2.0.
Via the rails envy podcast I found Super-fast bulk data imports in Rails with ar-extensions. Basically a scaling issue is that importing a billion records into rails via ActiveRecord sucks, this lets you do bulk imports and makes them much faster.
Rails Is A Ghetto is a potentially explosive rant from the Mongrel (a Ruby/Rails webserver) developer, slamming a lot of the rails people out there. Interesting to see what (if anything) this turns into.
Just a quick nod to Akita on Rails for his Rails 2.0 Screencast and tutorial part 1 and part 2.
He commented on my original "Rails 2.0 is out" story with them and from what I've seen it's good stuff, so I wanted to give some more exposure.
Rails 2.0: It's done! proclaims the RoR blog. Good job guys! Looking forward to playing with the new stuff.
Phil Hofsetter goes to some lengths to figure out mod_php, LightTPD, FastCGI - What's fastest?
Nice post by Raymond Chen about pushing operating system limits, in saying that if you're pushing the OS limits, nesting things 255 levels deep, or adding more than 65k objects on a form, you're probably needing a bit of redesign. Definitely a good point, though he does not that that is a big 'probably' as I'm sure there are cases where programmers are needlessly hindered by random OS limits.
Case in point, a story from back in the day.
When I first embarked into the IT world I was doing tech support for the Real Estate board, and eventually a bit of programming. This programming was done in a basic-type language whose name I don't remember, and it was used to do screen scraping and data manipulation from a dial up program (ie: call in, do a search, get the results, format them, output to a file for upload to a different system).
One day they wanted me to move from the text based language to a different system, again, similar but slightly different. Many times I really needed to compare code from one program and use it in another... a simple operation these days, and it's pretty common to compare two source files at a time. In this system, instead of a nice system where you could open the code in notepad (or edit at the time), it was:
Granted, that's not an OS limit, but a application limit :)
The Ruby on Rails weblog has a nice look at the Rails 2.0: Preview Release. Sadly no quick list of new stuff, nothing I can summarize easily anyway.
A good presentation on writing scalable rails apps from RailsConf in Berlin.
Kevin Rose found a nice tutorial on Starting Ruby on Rails. Much nicer than some of the other ones out there, quick and to the point and oriented towards other programmers.
Hows this for making source control more fun for programmers? Check out this video of a Wii controlling Plastic SCM.
I seem to be the only person programming in HTML::Mason anymore, so this link about Filters And HTML Fill In Form, showing how to use HTML::FillInForm to automatically for checking / filling in the values. Different way than the way I do it, so good to know.
Some good stuff on ways to write more comprehensible code.
Found on planet gnome is a howto on Creating An Automated Staging Server using CVS.
It’s easy to create an automated staging server for content that doesn’t need to be compiled (like most web content.) The trick is that CVS has a very flexible logging system. All you need to do is have your CVS server send an email on each check in and have the staging server take that email and check out the files that changed.
Details follow in the link.
This guy is a machine, coding a raytracer over 48 hours on a weekend... he called it PixelMachine and has a full log (with pretty pictures) of progress starting Saturday the 17th and ending Sunday the 18th.....
This is cool, ViEmu/VS: vi-vim editor emulation for Microsoft Visual Studio. Basically looks like it allows you to use the vi modal model for visual studio editing. This might make me go and check out MSVS again (sorry Microsoft, but my fingers only seem to know how to do vi editing while programming)....
While I'm not a really big fan of JS, I am a huge fan of pre-made systems that easily plug into existing code and solve problems, say, easy and quick Table Sorting, Filtering, Etc. This solution from JavascriptToolbox has some really nice features. The only thing I don't see (yet, I might have just missed it) is a combination of sorting and paging.
Still, definitely something to plug into my next web project.
A nice post on Math For Programmers. Finally justification that algerbra in school really was torture! Via jwz.
Aaron Bockover writes up a cool entry on Cracking down on heap abuse in Mono, telling how he did optimization work in TagLib-Sharp (a mono library for MP3 tagging) and moved memory allocation down from (for example) 103mb to 16mb! I honestly don't 100% understand a lot of what is actually going on, but seeing optimization work like this really is cool to me. Keep up the good work!
An interesting and sarcastic (yet funny) article entitled Why your startup should use Ruby on Rails. All good points in there (for those too lazy to RTFA the point is really saying why you shouldn't use RoR), however I think a similar article could be written about your favorite language or framework. In fact, your favorite language sucks! :)
For anyone who has looked at RoR or Catalyst or any of the newer frameworks web frameworks available out there it's an interesting read. Amazingly the comments to the story haven't devolved into a flamewar yet. We can still hope though!