Best of Feeds – 23 links – programming, music, photography, psychology, rails
RSS feeds are like cookies (that are good enough for me). Best of Feeds is a weekly collection of the best stuff I saw on the Internet this week. They’re saved on delicious and stumbleupon and cross-posted to Twitter and Tumblr as they happen and then collected together on Saturdays. I don’t blog on the weekend so read these links instead.Subscribe to //engtech to see this every week (or get it by email).
- [STARTUPS] Building a .com in 24 hours
- Walk through of building a website with Ruby on Rails
- (dominiek.com 1325 33 1924)
- [SOCIALSOFTWARE] The Art of the Sign Up Page
- analysis of what makes a great sign-up page
- (turtleinteractive.com 496 30 21)
- [PHOTOS] Stuck In Customs
- really awesome photo blog
- (stuckincustoms.com 343 100 )
- [MUSIC] Music business lessons
- (sethgodin.typepad.com 326 100 31)
- [COMICS] 17 Sensational, Free and Downloadable Graphic Novels
- Mostly DC first issue TPBs
- (dailybits.com 315 10 37)
- [CODE] 6 Reasons to develop your tests first
- Article on test driven development. I love the graphics in it.
- (lispcast.com 142 2)
- [MUSIC] Best of Bootie 2007 CD
- 21 track bootleg mix CD
- (bootieusa.com 126 95 7)
- [GAMERS] 15 Minutes of Fame: Noor the pacifist
- Interview with a WOW gamer who doesn’t kill anything
- (wowinsider.com 58 28 1624)
- [CODE] No Matter What They Tell You, It’s a People Problem
- Ouch, but true. Biggest predictor for doing good work is how much you like the people you’re working with.
- (codinghorror.com 46 14 5)
- [COMMUNICATION] saying more by saying less
- How to nip flamewars in the bud
- (slantsixcreative.com 39 22)
- [TECH HUMOR] Why It Won’t Work
- a look at sony’s new digital music offering
- (scalzi.com 38 30 4)
- [LIFEHACKS] Interesting Uses of Camera Mobile Phones To Stay Productive
- Camera phones are everywhere, use em.
- (labnol.org 36 29 2)
- [BLOGGING] Don’t Just Have a Blog – Learn to Think Like a Blogger
- Good analogy with losing weight… you have to change the way you think
- (problogger.net 33 7 10)
- [CODE] Billy Martin’s Technique for Managing his Manager
- ack, good advice.
- (weblog.raganwald.com 30 3)
- [COPYRIGHT] Gaming the Creative Commons for Profit
- What you need to know about how creative commons photos can be used against you.
- (danheller.blogspot.com 28 9)
- [CODE] Just when you think you’re the only one suffering…
- Why rails is hurting ruby, and why corporate programming sucks vs hackers
- (feyeleanor.livejournal.com 11)
- [OPENSOURCE] An Utter Disregard For Freeloaders
- quote: If enough demand for the feature exists, the feature comes into existence. There’s a tautological nature to it that makes it very clean and neat. Supply and demand are so closely linked as to become almost indistinguishable.
- (gilesbowkett.blogspot.com 7)
- [PHOTOS] Photo Products to Watch in 2008
- Memory card that includes wifi adapter to automatically upload when the camera is on, and magnetic picture frames so you can easily swap photos in your house
- (commoncraft.com 6 4)
- [CODE] Is Programming Like Music or Engineering, and Must it Be Unintuitive?
- (smoothspan.wordpress.com 6)
- [BLOGGING] performancing awards | Performancing.com
- Best blogs of 2007
- (performancing.com 5 24)
- [CODE] 9 Tips for the aspiring Emacs playboy
- tips and tricks for emacs kung-fu
- (lispcast.com 4)
- [GOOGLE] How To Get Your Data Out Of Google Web Apps
- In light of the Scoble Facebook data portability, how easy is it to get your data out of Google Aps?
- (webomatica.com 2 2 29)
- [BLOGGING] 40+ Social News Websites You Can Use
- Lots of niche social networking sites I’ve never heard of that might be good sources of traffic
- (doshdosh.com 19 14)
Legend
- saves – number of people who bookmarked on http://del.icio.us
- inbound links – number of blogs who linked to it (max 100)
- diggs – number of people who dugg on http://digg.com
This Week at Internet Duct Tape
- 9 Ways to Know When to Jump Ship at a Startup
- For the last couple of months I’ve been plagued with wondering if I should stay at my current startup. I’ve been approached with a few different job offers that I haven’t followed up on, and maybe it’s time I pursued greener pastures. In the words of the Clash: should I stay or…
- Online Survival Guide: 9 Tips for Dealing with Idiots on the Internet
- Winter is one of the worst for flame wars because environmental conditions make people more irritable and more likely to spend more time online. Here are some tips for navigating online discussions from someone who has been participating and managing public forums for over 15 years.
- Best of Feeds – 20 links – geek, movies, blogging, programming, xbox360
- geek, movies, blogging, programming, xbox360
This Week at IDT Labs
- [WORDPRESS] Category Resizer v1.0
- WordPress Category Resizer 2008/01/02 – v1.0 – BUGFIX: newer versions of WordPress.com broke this script – BUGFIX: will run on any WordPress install, not just WordPress.com – BUGFIX: now works when you have less than three categories – added automatic update check – Tested with WordPress.com…
- [WORDPRESS] Comment Ninja v0.5
- Comment Ninja v0.5 2008/01/02 – 0.5 don’t display comment ninja in mass-edit mode, since it doesn’t work on that mode wordpress.com added avatars to the comment display and they were being sent in emails on multi-author blogs it grays out the comments you can’t edit IDT Labs is a…
Tags: development, mp3, music, photography, photos, programming, psychology, rails
Why Open Source Software Sucks – Software Simplicity Isn’t Simple

Aside: Hosted software would be something like Gmail, while installable software would be something like Outlook. WordPress.com is hosted software by Automattic, but it is also available at WordPress.org where you can download it and install it yourself where ever you want.
There are a few “internet rockstars” in programming circles, and most programmers who read blogs will have heard of Joel Spolsky (one of the few people who writes entertaining tech books) and 37signals (the guys who made Ruby on Rails and Basecamp). The guys at 37signals recently wrote a post about how they prefer creating web-based software that they host vs software that a user would have to download and install themselves because it is so much easier for the software developer. When you don’t have to release your software into the wild you have so many less things to worry about: different operating systems, memory performance, installation dependencies, hardware dependencies.
“You have to deal with endless operating environment variations that are out of your control. When something goes wrong it’s a lot harder to figure out why if you aren’t in control of the OS or the third party software or hardware that may be interfering with the install, upgrade, or general performance of your product. This is even more complicated with remote server installs when there may be different versions of Ruby, Rails, MYSQL, etc. at play.”
Joel looks at his stats and points out that if he didn’t provide installable software then he’d be out of business, because it accounts for 80% of his revenue compared to hosted software. He also makes a great point that software that people are willing to buy is software that solves a gnarly problem, IE: it deals with complicated stuff. Any other kind of problem can be solved by free software because its uncomplicated enough that one guy in his mom’s basement can churn it out over a weekend.
“The one thing that so many of today’s cute startups have in common is that all they have is a simple little Ruby-on-Rails Ajax site that has no barriers to entry and doesn’t solve any gnarly problems. So many of these companies feel insubstantial and fluffy, because, out of necessity (the whole company is three kids and an iguana), they haven’t solved anything difficult yet. Until they do, they won’t be solving problems for people. People pay for solutions to their problems.”
But he then follows through with a great point that the gnarly problem that 37signals’ applications solve is the problem of design. 37signals might be building fluffy Ruby-on-Rails Ajax sites, but that’s beside the point of the problem they’re really solving: how to design a great looking user experience that makes people happy.
I think this draws a great parallel to what’s wrong with free software: it’s created to scratch a certain itch, and that’s usually all it does. Compelling user interface? Joy to use? Nope, it solves the original programmer’s problem and that’s about it. And before you get all uppity that I’m attacking open source software, let me clarify that I’m talking about the open source software I create.
The problem is two-fold: I have a natural tendency to over-complicate things and I have trouble sharing the customer’s pain (stepping away from the code, and seeing how a stranger would view the end result). Jeff “Metal” Atwood asks “When was the last time you even met a customer, much less tried to talk to them about a problem they’re having with your website or software?”
This hit me last week when I sat down with another engineer to show him an internal tool I was building for him. He started poking a usage case that confused him. It wasn’t in the spec, and it didn’t follow the way he thought of the flow. It was an artifact of the internal data structures I was using that I was exposing to the user. This happens too often. It’s the opposite of opinionated software [1]: pushing the decision making on to the user. [2]
Of course, writing open source software has its benefits because quite often there’s no barrier between you and the people who are using your software other than computer screens. You are your own quality assurance, and you are your own customer service. You have to explain to the users why they should install your software, you have to deal with the installation headaches your platform choice created, you have to explain any complexities with how to use it, and you have to help them when problems occur.
My open source software might suck, but its helping me explore the solution to a gnarly problem: how to solve problems in a way that is easy for other people to use.
Related Posts
- Getting to Simple – Engineers Have No Idea How Normal Human Beings Interact With Their Environments
- The Missing Curriculum for Programmers and High Tech Workers
- How to be a Programmer with 10 Simple Books
Footnotes
1 – There’s an interested essay to be written comparing opinionated software to considerate software.
2 – This programming talk might bore you, but the problem of simplicity in design is cross-discipline and applies to any blogger.
Getting Started with Ruby on Rails – Week 3 – Testing

I’ve fallen for the hype and started using Ruby on Rails for building database driven web applications. You can follow along with my weekly experience discovering gotchas with Ruby on Rails.
Previously: Getting Started With Ruby on Rails – Week 2
(I swear, back to your regularly scheduled non-rails content soon enough)
Gotcha #1 – after_initialized is after_instantiated
Yes, after_initialized is called more often than just when you call Model.new. Use if new_record? inside of it.
Gotcha #2 – button_to has it’s own class
You can’t pass :class parameters to the button_to helper because it creates it’s own :class=>”button_to”. Use :id instead.
Use console
script/console will give you an interactive console for playing with objects. Use it! It makes debugging tiny little gotchas with ruby syntax you might not be familiar with so much easier. Type reload! in the console to reload your models after any changes you’ve made. Type object.methods to see a list of everything an object responds to.
You can use many familiar console navigation keys like Up, Down to move between previous commands and Ctrl-A for start of line and Ctrl-E for end of line.
The Migration Shuffle
When you’re building a new migration on your development database always do the following:
rake db:migrate
rake db:migrate VERSION={current version - 1}
rake db:migrate
It’ll let you know that you’ve made an error in your down method right away, instead of weeks later when you’re trying to rebuild the database.
Little Bobby Tables
At some point your going to write a bad migration and screw up your development database, so rebuild it.
> mysql -u root -p drop database proj_development; drop database proj_test; create database proj_development; create database proj_test; quit
> rake db:test:prepare
> rake db:migrate

Data Migrations
If you’re building data migrations, always uses .save! so that it will fail on a validation error and you may want to litter your migration with puts statements to jump to which object is failing validation. There’s probably a better way of doing this using fixtures, or using –trace to find which migration failed.
Or hell, don’t use a data migration for bulky legacy data.
There’s Something About Tests
I really like how simple it is to write fairly complicated tests. One thing I didn’t like was how many tests it is possible to write. The examples from Agile Web Development with Rails showed them creating a lot of tests for the validates_* helpers. Unfortunately, you don’t need to create tests that duplicate those helpers because they are bulletproof. You do however need tests to prove that you used them correctly.
Cut-and-paste errors do happen, and double checking my validations did reveal at least one case where I thought I was validating a field but I wasn’t. Not to mention that if you’re using a regular expression filter to validate the format of a field you might forget to put start and end delimiters on it. Even testing something simple like all values are in the list is useful because you might have another validation that invalidates one of the values from your list.
Ruby is Dynamic
One thing I can’t stress enough is how much you NEED unit tests. Ruby is a dynamic language, and as such there isn’t a great and easy way to find out if the code will blow up without running it. If you run it by hand you won’t find all the interesting scenarios for the simple reason that you won’t be rechecking features you implemented last week that exploded because of a change you made this morning. You need a regressable test suite.
And there’s nothing like writing a test to make you realize how much more complicated you’ve made things than they need to be.
How to Run Tests
Run an individual test
ruby test/unit/testname.rb
Run multiple tests:
rake test # run all test rake test:unit # run unit tests etc
They can all be done inside of emacs by using the Tests drop down menu in rails-mode. This is the preferred method because you can click on errors and go directly to that file.
rails-mode also lets you use C-c C-c . to run the current test file. This allows you to rapidly iterate through test development.
Running Tests – Verbose Assertions
Here’s another tip that I didn’t realize at first: you can supply a message argument to your assertions that will display when it fails. This is essential if your using loops in your tests, IE: looping over an array of invalid field values, because the line number isn’t enough information to find out why the test failed.
Debugging a Test – Breakpoint
You can use the breakpoint keyword where a test is failing. This will open up a console at the breakpoint spot. Unfortunately it doesn’t work well inside of emacs because the ROutput buffer is read only (in fact, you’ll have to kill the process). So run the test from the command line when you want to play with breakpoints. I can’t seem to find a way to access the local variables in a method… so on to ruby-debug.
Debugging a Test – rdebug (or redbug according to Microsoft Word)
sudo gem install rdebug -y
in config/environments/test.rb
require 'ruby-debug'
Then use the debugger keyword instead of the breakpoint keyword where you want to stop. Don’t use it when you’re running tests from emacs because things will look weird.
Running Tests – Fixtures – Validating Fixtures
Here’s the fun bit: sometimes you break your fixtures. Not on purpose, to test bad data, but because your erb goes a little wrong, or because they’ve gotten out of date with your schema. Here’s a rake task that will let you do rake db:fixtures:validate
If you are using erb to generate your fixtures, you can also see how your fixture will roll out using:
erb test/fixtures/fixturename.yml
And while you’re at it, you probably want to validate your existing database against your models. Here’s a rake task that will let you do rake db:validate_models
Running Tests – Advanced – autotest (part of ZenTest)
There’s a plugin called autotest that will automatically run tests on any files that have changed. This is great because you can keep the console open in the background and it will immediately catch if you’ve saved a file with a typo! No need to go to the web browser, navigate to the changed page and hit refresh. In fact, using the web browser should be an afterthought… you should be able to create tests for any features.
sudo gem install ZenTest rehash autotest -rails
One gotcha: disable autotest if you’re manually running tests as well! You’ll end up creating duplicate records in the test database. The solution is: don’t manually run tests with rake at the same time as autotest.
Walkthrough of autotest: http://maintainable.com/articles/dry_up_testing_with_autotest
There’s a way to integrate autotest into emacs.
Running Tests – Advanced – RedGreen (for autotest)
Not the horrible Canadian TV show, but a notifier for autotest status reports.
https://wiki.csuchico.edu/confluence/display/webd/Testing+Rails+Apps
Running Tests – Advanced – ZenTest
ZenTest is useful for parsing your rail files and creating stubs of tests.
Running Tests – Advanced – Test::Rails (part of ZenTest)
Test::Rails provides a mechanism for splitting functional tests into controller tests and view tests. This decoupled lets you check your business logic as is, and your view routing as is.
If you want to add a generator for creating view/integration/controller tests:
./script/plugin install http://topfunky.net/svn/plugins/vic_tests
Some collected thoughts about Test::Rails
- Assertion Cheatsheet
- http://www.linuxjournal.com/article/7776
- http://blog.michaeltrier.com/2007/3/17/working-with-test-rails
- http://tuples.us/2007/06/03/fragility-of-view-tests/
Running Tests – Advanced – Rcov
Rcov is another tool that will help your testing by calculating the code coverage of your tests. This is an essential tool to find holes in your testing strategy. All the usual caveats of code coverage apply.
http://eigenclass.org/hiki.rb?rcov
sudo gem install rcov rehash rcov test/path_to_specific_test.rb - or - ./script/plugin install http://svn.codahale.com/rails_rcov
Now you can do
rake test:units:rcov
http://agilewebdevelopment.com/plugins/rails_rcov
Running Tests – Advanced – Heckle
Heckle mutates your code to see if the tests actually check anything. Unfortunately highly coupled code is heckle-proof because changing anything breaks everything else.
sudo gem install heckle
Running Tests – Measuring – Flog
Flog measures reports a score based on how complex it thinks your code is. The higher the score, the higher the chance that there is a bug hiding there.
sudo gem install flog
A Handful of Blogs About Rails Testing
These guys have written a lot (all?) of the plugins I’ve mentioned and are worth checking out if this stuff interests you:
Related Posts
Getting Started With Ruby on Rails – Week 2

I’ve fallen for the hype and started using Ruby on Rails for building database driven web applications. You can follow along with my weekly experience discovering gotchas with Ruby on Rails.
Previously: Getting Started With Ruby on Rails – Week 1
Emacs Rails-mode
Last week I complained about wasting time setting up rails-mode in emacs. I’m starting to find some real time saver though. The navigation short-cuts are absolutely necessary for navigating the file structure of a Rails application and I really like how the syntax highlighting can capture lines that don’t make any sense to Ruby. This is a great feature if you’re learning Ruby at the same time as you’re learning Rails. It has auto completion for “”, [], {} and ending function blocks and even picks up things like when you have one too many ends in your file.
Which files should be checked in?
I couldn’t find a list of what files are allowed to be checked in anywhere in Agile Web Development with Rails. The answer seems to be anything but:
db/schema.rb # easier to let your db:migrate control it config/database.yml # because it contains database passwords coverage/* # generated by rcov logs/* # generated by server tmp/* # temporary sessions files
Don’t overwrite the flash
Bad, no validation errors will be shown:
@model.save flash.now[:notice] = "I saved it"
Better:
if (@model.save) then flash.now[:notice] = "I saved it" end
Will trap and display ruby errors as well as validation errors:
begin if (@model.save) then flash.now[:notice] = "I saved it" else raise "Error saving" end # Do stuff rescue Exception => e flash[:notice] = e.message end
Keep controllers streamlined
I found myself creating one controller that had add/show/delete/list actions for multiple models. It’s much cleaner to have multiple controllers for the individual models.
Conditional Linking
link_to_if will put an unlinked version of the text if the conditional is false. This is much more useful than removing the link text completely for a lot of situations, because you don’t have to worry that the rest of the text around it will look weird. Don’t try to use html_options as a hash! I lost quite a bit of time to this because it won’t use the method parameter, but it doesn’t give you an error.
link_to_if (check_if_user_can_delete),
"Delete Image",
{ :action => "delete", :id => @image.id },
:confirm => "Are you sure?",
:class => "dangerous",
:method => :delete
Generate validates_* off of database
I would have liked it if the generate script automatically generated validates_* helpers off of the database table. validates_length_of could be generated for :limit and validates_numericality_of could be generated for :integer.
Using the same partial to display create/edit/show
This is a neat little trick I found. You can use the same partial for your create/edit/show actions by using html_options and setting
{ :disabled => (controller.action_name == "show" ? true : false) }
for all the fields. It might not be useful for many public applications, but for an internal app it’s a great way to use the same ajaxy displays that you use for create/edit in show.
Polymorphic Associations
Are weird if you want to validate uniqueness. They might work better with has_many relationships than with has_one relationships. Or, I made it more complicated that it had to be.
Deploying sucks
It’s true. Played around a bit with capitrano and vlad the deployer but the both seem to assume you’re using subversion.
Free Tidbit: How crypt works in passwd files
I don’t know why this was so hard to find in Google: passwd files that use the crappy crypt mechanism use the first two characters of the expected password as the salt!
given_password = "hello_world" encrypted_password = "ahga3sgj" return encrypted_password == given_password.crypt(encrypted_password.slice(0,2))
and don’t worry, I’ll talk about something other than Rails later this week :)
Getting Started With Ruby on Rails – Week 1

I’ve fallen for the hype and started using Ruby on Rails for building a database driven web application. If you’ve never heard of Rails it is a web framework using the Ruby programming language. Ruby is an object-oriented interpreted language, that’s often compared favourably with Smalltalk. [1] What’s a framework? A framework provides a structure and a set of tools usually for solving a particular type of problem. A programming language solves general problems while a framework extends a programming language to better solve a specific problem.
Rails is a framework for building web applications: stuff like blog software, instant messaging, to-do lists, web magazines, and your favorite web comic. Word on the street is that ROR is a resource hog but the resource consumption is balanced out by how much more productive it is to develop with. It’s easier to buy more computers to host a web application than it is to hire more developers. Computers get more powerful over time; developers not so much.
I’ve been developing websites as a hobby off and on since 1994, but I only learned CSS in the past six months. I’ve done some minor hacking of other people’s web apps that were written in ASP or Perl and they were always horrible messes of spaghetti code. I’m really looking forward to trying out a web app from scratch.
Choose Your Path
I run a Windows machine with a VMWare Linux box inside of it, so I can choose to do my Rails development under Windows or under Linux. If I use Windows then I can use InstantRails, which is a one-click installer that gives you everything to need to start coding ASAP. But I much prefer developing under Linux because you can’t beat the power of having a strong command line. The Windows command line console is a joke, and requires a ton of 3rd party utilities for stuff that’s already there under Linux. [2]
The downside is that there is no one-click install for Linux. Well, except for this one, which I didn’t notice until now :)
Installing ruby, gem and rails is simple and I was able to do it under my user account using the standard –prefix=/home/engtech install options.
Gotcha #1 – MySQL
I already had MySQL installed on my Linux box but it was an extremely old version that blew up the second I tried to use Rails to talk to the database. You need at least MySQL 4 to use Rails because it uses ENGINE=InnoDB for its calls. Older versions of MySQL don’t have InnoDB turned on by default, and once you do turn it on they only understand TYPE=InnoDB.
Mysql::Error: You have an error in your SQL syntax near 'ENGINE=InnoDB'
Tip: Get the latest and greatest version of MySQL instead of whatever came with your Linux install. I needed the Server, Client, and Developer RPMs. MySQL was the part of the install process that required root access.
Tip: If you use a password for your MySQL root account, make sure you change config/database.yml to use it.
Gotcha #2 – Integrated Development Environment (IDE)
Rails doesn’t come with a standard IDE, but instead gives you a wide option of choices. Aptana RadRails, based on Eclipse is a good choice. But I’ve already sold my soul to one editor for all my coding needs: emacs. Emacs is the “kitchen sink” IDE because it supports everything: you can find extensions for any programming language or task. The downside is that it has a learning curve like you wouldn’t believe.
There’s a tutorial on how to add rails support to emacs. It’s long and complicated. Using rails mode in emacs requires upgrading to emacs version 22 that broke a lot of my existing DotEmacs hacks. I eventually got it working, but in retrospect I might have been better off going with RadRails because I lost hours to this. I’m still finding emacs keystrokes that don’t do what I expected them to.
I’m unimpressed that there isn’t a quick reference print sheet for rails-mode, this is the best that I could find. So far I’ve only been using the syntax highlighting and C-c C-c g K and C-c Up / C-c Down to navigate between files.
Gotcha #3 – Development Server vs Production
When I was running into MySQL installation problems, I toyed with using SQLite3 instead for a while. Needless to say, make sure your development database is using the same versions of everything as your development and test servers. It’ll save you lots of headaches.
Initial Opinion
People weren’t lying about how productive programming with Ruby on Rails is. In the same amount of time it took me to write this blog post I was able to get a simple web application with user authentication up and running with a web interface that is probably “good enough” for final release. Which is ridiculous, compared to my previous experience hacking apps together using ASP or Perl.
- Directory structure – Clean, clear, and everything has it’s place.
- Naming conventions – One of the best things a framework can give is enforcing a standard way of naming things. It takes a while to learn it, but it becomes second nature that if a class is called X, the database table is called Y and the tests are called Z. If you leave it to themselves most developers create small inconsistencies in naming conventions that waste time — especially if more than one person is working on the code.
- Don’t Repeat Yourself – I really like the way Model/View/Controller separates the code and keeps it becoming a mess. Inheritance and helpers/partials are great for keeping you from duplicating code.
- Succinct – Wow, you really do get a lot done with very little code writing. They weren’t kidding when they said you could write blogging software in under 15 minutes.
- HTML / CSS / XML – I really love that it doesn’t try to hide the HTML, CSS and XML under a lot of programming calls. There are helpers for doing common things, but you’re free to write your own web code.
- Development / Test / Production – In my limited experience with web apps, I’ve never worked on anything that had more than 20 users. Testing was all done manually, and the production server was the development server. It was a mess. Clean separation makes it much easier to work on code independently and only push it out to users once it has been rigorously tested.
- Migrations – We use to build our database tables using a PHPMyAdmin web interfaces. Needless to say, doing it through scripting where you can tear down, reassemble, and rebuild the database tables is much cleaner because everything is reproducible from scratch.
- Rake, rdoc, and test – One of the things I like most about Ruby is that it has all the fixings I expect from modern languages: the ability to automatically generate documentation off of the code and a built-in unit testing and build framework. I’m always amazed when I see a language that doesn’t natively support these facilities.
- Religion – The big downside to Ruby on Rails is that it feels a little bit like a religion sometimes.
Conclusion
I should have tried Ruby on Rails a long time ago. I spent entirely too much time setting up my development environment compared to when I could have been developing a web application. I could have been up and running in less than an hour if I had:
- Used InstantRails
- Used Aptana RadRails
Footnotes
1 – Did you know that Smalltalk inspired the Macintosh GUI? Smallpark was yet another example of the magic that was going on at XEROX PARC in the 70s. These are the guys who invented the mouse, colour graphic, windows/icons for a GUI, WYSIWYG text editors, Ethernet (how you talk to other computers on a network), and laser printers. Programmers at Work featured interviews with some of the people from PARC.
2 – I’m always amazed that people can program without easy access to diff, find, grep, perl, etc. All of these things are available for Windows for free, but they never work quite the way I expect them to.
Best of Feeds – 30 links – programming, google, tips, agile, facebook
RSS feeds are like cookies (that are good enough for me). Best of Feeds is a weekly collection of the best stuff I saw on the Internet this week. They’re saved on delicious and stumbleupon and cross-posted to Twitter and Tumblr as they happen and then collected together on Saturdays. I don’t blog on the weekend so read these links instead.Subscribe to //engtech to see this every week (or get it by email).
- [MOVIES] Top 50 Dystopian Movies of All Time
- about 8 on there I haven’t seen yet
- (snarkerati.com 1227 100 2012)
- [CODE] The Future of Software Development
- Very fluffy discussion of waterfall vs agile with the hypothesis that small teams are the future.
- (readwriteweb.com 617 54 734)
- [DESIGN] Top 100 User-Centered Blogs
- centered around the user experience
- (virtualhosting.com 558 72 45)
- [HIRING] 100 Resources to Attract, Retain and Utilize Rock Star Programmers
- Great list of resources for hiring programmers
- (hrworld.com 343 16 109)
- [RUBY] 10 Reasons to Learn Ruby
- I’m drinking the koolaid.
- (cyberarmy.net 342 17 1028)
- [RAILS] Zero to Riding the Rails in Four Months
- Experience getting started with a Rails app.
- (hackd.wordpress.com 301 17 3)
- [BLOGGING] Top bloggers reveal how to build traffic off-blog without spending a dime
- Guest posting and building relationships are the top two ways.
- (jonathanfields.com 269 27 708)
- [SOCIAL] NOSO
- Online web app that is focused on getting people off of their computers and interacting in meatspace.
- (nosoproject.com 227 100 6)
- [GTD] Top 10 Distraction Stoppers
- They included my “distraction free gtd” web app pack
- (lifehacker.com 100 20 22)
- [GAMERS] I Played Through Episode Two Holding A Goddamn Gnome (Spoilers)
- From the article: ” Who watches the watchers? The gnome does. He watches everyone, unblinkingly.”
- (kfj.f2s.com 83 35 2946)
- [CODE] Free Programming Tips are Worth Every Penny.
- I think I’m developing a blog crush.
- (wilshipley.com 66 19 24)
- [DESIGN] What about research, interviews, and documentation?
- Throw it at the wall and see what sticks. Good advice.
- (37signals.com 33 3 5)
- [WORKHACKS] Remember, This Stuff Is Supposed To Be Fun
- Work should be something that you enjoy.
- (codinghorror.com 28 15 15)
- [SEO] What if Google had to design for Google?
- What the Google homepage would look like if they had to design for SEO.
- (meangene.com 24 28)
- [STARTUPS] ‘Un-sexy is good business,’ and other rules from Scott Rafer
- MyBlogLog founder on how to survive the market bust that’s coming in 5 months.
- (foundread.com 23 9)
- [HALLOWEEN] Animal Halloween Costumes
- Impressive number of Star Wars costumes.
- (nynerd.com 11 6 10)
- [BLOGGING] The First Month: Building Something From Nothing
- Skellie’s building traffic from nothing guide. Great tips in there, must read for beginner/intermediates.
- (skelliewag.org 8 3 3)
- [SMO] Targeting StumbleUpon Users
- How to build a stumbleupon community
- (dailyblogtips.com 7 7)
- [IPHONE] Video Game Ideas: iPhone SDK edition
- A ton of ideas for iPhone games. Really cool stuff.
- (wilshipley.com 7 8)
- [COMICS] Missing!
- The disappearance of Calvin and Hobbs
- (clevescene.com 5 4)
- [OCD] On Being Crazy
- From the article: ” Then I’ll have a week so dark that simply taking mail out of the mailbox seems like an epic struggle. And I remember, oh yes, right, you aren’t going away. Because you’re my brain. You’re my chemistry. You’re me.”
- (wilshipley.com 2 7)
- [STARTUPS] The Wheels on the Bus
- Why buying a bus ticket and hanging out with REAL PEOPLE might be the best thing for your startup idea. And it’s true — normal people don’t have nearly the same problems I try to fix in my own life.
- (ricksegal.typepad.com 2 2)
- [FACEBOOK] Inner Circle App
- Facebook application that lets you build custom groups of friends.
- (facebook.com 2)
- [GOOGLE] Ad Blindness? How About Ad Repulsion?
- Interesting.. make the real content look like AdSense and it becomes immediately repulsive.
- (franticindustries.com 2)
- [OPENID] Automattic,Gravatar, and the Elusive Unified Identity
- Automattic is making a move to providing single-sign-on using your wordpress.com IDs. Good business idea, but still scary considering I managed to lock myself out of sites using because of my wordpress.com openID.
- (neomeme.net)
- [FACEBOOK] Google scared of Facebook? Puh-leeze
- Matt skewers business 2.0 :)
- (mathewingram.com)
- [PATENTS] Amazon patent foiled by lone gunman
- That’s awesome.
- (mathewingram.com)
- [MICROSOFT] Ballmer to Web 2.0 Execs: You Have a Pulse? We’ll Give You At Least $50 Million For It.
- developers, developers, developers. Ballmer is such an idiot.
- (parislemon.com)
- [REDDIT] the reddit toolbar: taking social news one step closer
- Hidden setting on reddit that puts a toolbar on outgoing links… very useful for voting without using the bookmarklet.
- (muhammadsaleem.com)
- [GEEK] Star Trek Cast
- (blog.logtar.com)
Legend
- saves – number of people who bookmarked on http://del.icio.us
- inbound links – number of blogs who linked to it (max 100)
- diggs – number of people who dugg on http://digg.com
This Week at Internet Duct Tape
- How I Use Google Reader
- “How I Use” is a new series I’m starting about the software I use on a day-to-day basis. I want share tips and tricks and to learn tips and tricks from readers sharing with me in the comments. Google Reader is a web-based RSS reader. Because it’s web-based I can access my Google…
- The Attention Age: Accelerando, Software Agents, Filters and Gatekeepers
- Last night I finished reading Accelerando by Charles Stross. Like many of the books I read these days, I heard about it from another blogger. It feels like a spiritual sequel to Alvin Toffler’s Future Shock, John Brunner’s the Shockwave Rider and Warren Ellis’ Transmetropolitan. It is…
- Blog Action Day: Save Paper when Readers Print Your Blog
- Today is Blog Action Day with a focus on the environment and I’m going to teach a quick CSS trick for how to save paper by reducing what gets printed when someone prints an article from your blog.
- Coworkers Considered Harmful
- I hit a realization this weekend that I’ve hit many times before. There’s an inordinate number of times when I’m in the office late not because of my own time management failures but because of the people I work with.
- Best of Feeds – 26 links – programming, webdesign, javascript, design, tips
- Tags: blogging, design, fun, javascript, lifehacks, programming, rails, tips, usability, web2.0, webdesign, writing
This Week at IDT Labs
- [WORDPRESS] Extract Comments or Trackbacks only from the Comments Feed
- I’ve created two Yahoo Pipes for building filters of the comments feed on your WordPress blog so that you can see comments only or trackbacks only.
- [RSS] Tagosphere
- Tagosphere is an example I created for Jon Udell that builds an RSS feed around a specific tag using delicious, flickr, technorati, and wordpress.com.
Tags: agile, blogging, career, facebook, funny, games, google, ideas, marketing, programming, rails, startups, tips, traffic, usability, webdesign
Best of Feeds – 26 links – programming, webdesign, javascript, design, tips
RSS feeds are like cookies (that are good enough for me). Best of Feeds is a weekly collection of the best stuff I saw on the Internet this week. They’re saved on delicious and stumbleupon and cross-posted to Twitter and Tumblr as they happen and then collected together on Saturdays. I don’t blog on the weekend so read these links instead.Subscribe to //engtech to see this every week (or get it by email).
- [JAVASCRIPT] Ext JS – JavaScript Library for Web Windows
- Interesting javascript library for doing web windows. Has a nice spreadsheet display.
- (extjs.com 3318 100 6)
- [JAVASCRIPT] Welcome to Tablecloth
- Javascript code for doing quick table highlighting
- (cssglobe.com 1767 100 1247)
- [WEBDESIGN] 30 Usability Issues To Be Aware Of
- common tips, good for beginners
- (smashingmagazine.com 1705 100 781)
- [SQL] A Visual Explanation of SQL Joins
- Jeff, where were you in 1997 when I needed this!?
- (codinghorror.com 1069 67 9)
- [DESIGN] 10 Usability Nightmares You Should Be Aware Of
- (smashingmagazine.com 874 100 253)
- [DESIGN] So you want to create WordPress themes huh?
- 16 how-tos on building a wordpress theme
- (wpdesigner.com 585 100 21)
- [SLEEPHACKS] Top 10 Ways to Sleep Smarter and Better
- LifeHacker has the goods on beating insomnia
- (lifehacker.com 546 68 1489)
- [JAVASCRIPT] Help! I Don’t Know JavaScript!
- Collection of intros to javascript
- (blog.mootools.net 470 10 27)
- [GAMES] Science Museum – Launchpad Online – Launchball
- Very cool little physics simulator game.
- (sciencemuseum.org.uk 392 100 947)
- [GIFTS] 30 Frugal Gift Ideas to Show You Appreciate Someone
- Holidays are coming up…
- (zenhabits.net 326 25 669)
- [CODE] 10 Things Every Programmer Should Know For Their First Job
- General, but true.
- (applematters.com 172 19 4)
- [RUBY] Mr. Neighborly’s Humble Little Ruby Book
- Another free Ruby ebook
- (infoq.com 53 33)
- [WEIGHTLOSS] Geek Diet and Exercise Programs
- All familiar links and photos to me, but still a good roundup.
- (codinghorror.com 44 35 46)
- [INTERNET] The Life and Death of Jesse James
- The scariest people in the world are the lonely people, and this true story strikes it home for me with full force. This is essential reading for anyone who spends a lot of time in internet culture.
- (laweekly.com 40 18)
- [RAILS] Two months with Ruby on Rails
- Two months checkin with what he doesn’t like about Rails
- (t-a-w.blogspot.com 39 10)
- [BOOKS] Hard Work, No Pay: What’s the Point?
- Petzold on being an author of programming books. Response to Jeff Atwood post.
- (charlespetzold.com 30 12)
- [TWITTER] Twitter is Paying My Rent
- Why Twitter is a great tool for a first class tech blogger.
- (marshallk.com 25 7 20)
- [BOOKS] Expert Advice: Websites for the Book Lover
- Quite a few sites I hadn’t heard of.
- (makeuseof.com 24 4 20)
- [DELICIOUS] Readeroo
- Simple browser extension for marking items “to be read” later and then marking them as read when you’re done.
- (monsur.com 21 5)
- [WEB2.0] Q&A: Foul-Mouthed Blogger Ted Dziuba Tells Why Most Startups Fail
- Uncov in wired! What.the.fuck!
- (wired.com 19 31 4)
- [WEB2.0] Tim O’Reilly – Graphing Social Patterns
- Liveblogging notes from Tim O’Reilly’s presentation.
- (allfacebook.com 9)
- [BOOKS] When Completing a Book Depends on Someone Else
- Blogging Heroes should be in print soon. I was interviewed for the book, not sure if I made it into the final cut.
- (mikebanks.blogspot.com)
- [COPYRIGHT] Happiness In Slavery No More: Nine Inch Nails Goes Record Label Free
- Fans and artists are learning to bypass the recording industry.
- (parislemon.com)
- [FICTION] The ride home
- From the article: ” People with happy lives don’t go on quests, they lead their happy lives.”
- (beatsentropy.com 3)
- [CODE] Getting rid of the use global contstants file
- Another post from my old friend who used to bring me subway cookies at raves.
- (dlowe-wfh.blogspot.com)
- [MARKETING] The Smart Way to Get Traffic and Links: Creating a Prospect List for Bloggers
- This is the proper way to promote yourself with other bloggers. Get on their radar before you ever approach them about anything.
- (doshdosh.com 3)
Legend
- saves – number of people who bookmarked on http://del.icio.us
- inbound links – number of blogs who linked to it (max 100)
- diggs – number of people who dugg on http://digg.com
This Week at Internet Duct Tape
- What I’m Playing: PC, Nintendo DS, Xbox 360
- I’m on day 10 of “one of those weeks” so I haven’t had time to fully develop the usual cornucopia of rainbow-coloured blog post ideas. All of my time has been spent on work and family with a smidgen of video game playing to decompress my brain. This isn’t one of those…
- The Holiday Spread – Group Weight Loss Game
- This past weekend was Thanksgiving (aka Turkey Day) in Canada, which means seeing your family and eating a lot of food together. One of the favourite pastimes at any holiday is pointing out who’s gained weight and who hasn’t. This got me thinking: one of the principals of successful dieting…
- Best of Feeds – 34 links – programming, google, lifehacks, ruby, funny
- Tags: blogging, estimation, free, funny, google, gtd, javascript, lifehacks, productivity, programming, rails, ruby, rubyonrails, search, seo, tips
This Week at IDT Labs
- [WORDPRESS] Extract Comments or Trackbacks only from the Comments Feed
- I’ve created two Yahoo Pipes for building filters of the comments feed on your WordPress blog so that you can see comments only or trackbacks only. WordPress Comment Extractor WordPress Trackback Extractor
- [RSS] Tagosphere
- Tagosphere is an example I created for Jon Udell that builds an RSS feed around a specific tag using delicious, flickr, technorati, and wordpress.com.
- [GTD] Distraction Free GTD UpdateNow with 36 applications + fixes some problems with apps that don’t support https .
Tags: blogging, design, fun, javascript, lifehacks, programming, rails, tips, usability, web2.0, webdesign, writing
Best of Feeds – 34 links – programming, google, lifehacks, ruby, funny
RSS feeds are like cookies (that are good enough for me). Best of Feeds is a weekly collection of the best stuff I saw on the Internet this week. They’re saved on delicious and stumbleupon and cross-posted to Twitter and Tumblr as they happen and then collected together on Saturdays. I don’t blog on the weekend so read these links instead.Subscribe to Internet Duct Tape to see this every week (or get it by email).
- [LIFEHACKS] The Printable CEO
- Collection of PDFs for task/hour tracking.
- (davidseah.com 949 100 7)
- [BOOKMARKING] toread – an email-based bookmark service
- Simple service to use to track stuff ‘to read later’. They store the top 10 for each day. It’s like having an archive of the delicious popular list.
- (toread.cc 938 100 440)
- [RUBY] The Little Book Of Ruby
- 85 page guide to the ruby language syntax, free ebook
- (sapphiresteel.com 492 38 28)
- [CODE] Software Is Hard
- *Excellent* article about software estimation and Rosenberg’s Dreaming in Code
- (gamearchitect.net 449 68 15)
- [STARTUPS] The Future of Web Startups
- Paul Graham on how web startups will start to be standardized and easy to do… which will change everything.
- (paulgraham.com 443 100 671)
- [LIFEHACKS] Top 100 Productivity Blogs
- I’m not on the list, but many there’s a lot of great finds on here.
- (whitepapers.org 440 44 53)
- [RUBY] Ferret – full text search engine
- I’m wondering if this could be a replacement for intranet text search?
- (ferret.davebalmain.com 429)
- [JAVASCRIPT] The Elements of JavaScript Style
- Everything you need to know about writing good javacsript.
- (javascript.crockford.com 336 30)
- [ESTIMATION] Web Worker 101: Estimating Basics
- Nothing new, but good round-up for people who have trouble estimating.
- (webworkerdaily.com 296 36 6)
- [JAVASCRIPT] Learning JavaScript resources
- Good collection of tutorials and links about Javascript
- (juixe.com 289 4 6)
- [CODE] Software Branching and Parallel Universes
- One of the best explanations of software branching in revision control that I’ve ever read.
- (codinghorror.com 274 34 3)
- [GEEK] Flo Control Cat Door
- Image recognition to prevent cat from coming inside with a mouse. Why do I enjoy every link Coding Horror sends me so much?
- (quantumpicture.com 228 80 )
- [RAILS] Rails Rumble: 92 Web Apps Created in 48 Hours
- Winners from the 48 hours Rails Rumble
- (readwriteweb.com 169 28 681)
- [FIREFOX] A Visual Guide to the Firefox Web Browser – Learn Firefox
- via: rooster
- (learnfirefox.cybernetnews.com 167 100 17)
- [RAILS] Build Your Own Ruby on Rails Web Applications
- Free e-book for next 60 days. Probably not as good as Agile Web Development.
- (sitepoint.com 151 100 6)
- [VIRUS] Gathering ‘Storm’ Superworm Poses Grave Threat to PC Nets
- Your antivirus software is completely useless. This is scary.
- (schneier.com 104 62 14)
- [CODE] Inheritance is evil, and must be destroyed: part 1
- Using the strategy pattern vs inheritance with dark jedi examples.
- (berniecode.com 76 9)
- [IPHONE] If wishes were iPhones, then beggars would call
- If you want to hack your phone (dvd player, etc) then buy a phone that lets you hack. Don’t complain about Apple’s lockin when everything they do revolves around lockin.
- (diveintomark.org 60 61 9)
- [LIFEHACKS] 6 Rules for Dealing With Habits vs. Tasks
- Good ideas about how to build habits
- (zenhabits.net 54 8 58)
- [BLOGGING] Blogging is Dumb, Stupid and Successful
- Rant against blogging about blogging and ‘quick tip’ type posts.
- (cornwallseo.com 38 25 716)
- [CODE] What I Learned From X That Made Me A Better Programmer In Y
- From the article: ” We go with Bob’s plan because Bob successfully asserted his dominance over Fred. If we’re lucky, Bob is good at making plans as well as asserting dominance, but if he’s bad at making plans but good at asserting dominance, his plan is still the plan”
- (gilesbowkett.blogspot.com 37 3 2)
- [HUMOR] Microsoft Search
- Microsoft Press releases shows that Microsoft Live Search will finally read the state Yahoo/Google was in 7 years ago.
- (wdr1.com 25 11)
- [LIFEHACKS] shoutingmat.ch (lifehack)
- Interesting agreggator for posts about lifehacks.
- (lifehack.shoutingmat.ch 22 10)
- [SEO] SEOS : The Card Counters of the Internet
- From the article: ” “Google is a casino, and you are a visitor.””
- (johnon.com 19 24 19)
- [HUMOR] Crackbook
- Facebook parody site.
- (theinternetnowinhandybookform.com 16 17)
- [BLOGGING] The 7 Habits of Highly Defective Bloggers
- 7 habits inverted with a view on blogging — what not to do
- (lifetrainingonline.com 12 6 13)
- [PRESENTATIONS] Keynote (The Software) Considered Harmful
- Do presentations and demos with nothing but a whiteboard. Much more interactive.
- (gilesbowkett.blogspot.com 9)
- [SEO] How I reversed my Google ranking penalty
- More on how asking for links with specific anchor text can get your blog blacklisted by google. Contest bloggers be aware.
- (davidairey.com 6 15 14)
- [HUMOR] 300: The Board Game
- I still enjoy the meme :)
- (defectiveyeti.com 5 4)
- [GUESTBLOGGING] Get Your Guest-Posts Here
- Guestblogger for hire, Chris G.
- (chrisg.com 3 18)
- [COPYRIGHT] Has And Belongs To Many: The Problem With Trademarking Rails
- From the article: ” Trademark rights are destructive to the cooperation and trust necessary for successful open source projects.”
- (gilesbowkett.blogspot.com 2)
- [RUBY] When does ( ?? == 63 ) ?
- True dat. Successfully scared me away from Ruby :)
- (sob.apotheon.org)
- [SEO] A Google Allegory at Hamlet Batista dot Com
- Asking for links with specific anchor text can get your blog blacklisted by google. Contest bloggers be aware.
- (hamletbatista.com 8)
- [COMMUNITY] Poisonous People
- OSCON PDF slides from the SubVersion guys. Read the poisonous people one!
- (red-bean.com 5)
Legend
- saves – number of people who bookmarked on http://del.icio.us
- inbound links – number of blogs who linked to it (max 100)
- diggs – number of people who dugg on http://digg.com
This Week at Internet Duct Tape
- Distraction Free GTD: 32 Todo List Web Applications
- Web Runner is a tiny site-specific web application that runs using less resources than Firefox or Internet Explorer. The whole idea behind a site specific web browser is that you want to access a web application without being tempted to access other sites. You want to access a site without being…
- Magazine Review: October 2007 Issue of Inc. Magazine
- I came to a rather startling discovery in the past month: magazines are just blogs with the added luxury of being able to read them while on the toilet or in the bathtub (but hopefully not both). I picked up the October issue of Inc. magazine because Joel Spolsky of Joel On Software has joined the…
- Blog Tip: Create a Link Post in 3 Seconds
- One question I’m frequently asked is “how do you build those Best of Feeds weekly links?” The way I do it is pretty complicated, but I’ve found a much simpler way that I want to share with you all.
- Digest for September 2007
- Every month I publish a digest post collecting the best of Internet Duct Tape.
- Best of Feeds – 30 links – programming, productivity, code, socialsoftware, socialnetworking
- Tags: adsense, advice, blogging, career, code, design, development, firefox, gtd, lifehacks, productivity, programming, ruby, rubyonrails, socialnetworking, socialsoftware, tips, web2.0, webdesign
This Week at IDT Labs
- [AKISMET] Akismet Auntie Spam v2.04
- Our favorite Auntie has a new version. 2007/10/04 version 2.04 – Fixed (some) memory problems with v2.03 – Still slow, I need to get it working with a profiler, none of the hacks for Greasemonkey + Firebug seem to work.
- [DELICIOUS] Delicious Link Builder
- Build a list of links using your delicious account to bookmark them. Works great with my Yahoo Pipe Cleaner script . Example : [BOOKMARKING] toread – an email-based bookmark service Simple service to use to track stuff ‘to read later’. They store the top 10 for each day. It’s like…
- [RSS PIPE] Stupid Credit Builder
- This is a clone of Stupid Feed Rewriter that backdates the entry to January 1st, 1970. Useful for adding a credit link at the end of a list.
Tags: blogging, estimation, free, funny, google, gtd, javascript, lifehacks, productivity, programming, rails, ruby, rubyonrails, search, seo, tips
Best of Feeds – 22 links – programming, blogging, tips, javascript, rails
RSS feeds are like cookies (that are good enough for me). Best of Feeds is a weekly collection of the best stuff I saw on the Internet this week. They’re saved on delicious and stumbleupon and cross-posted to Twitter and Tumblr as they happen and then collected together on Saturdays. I don’t blog on the weekend so read these links instead.
Subscribe to //engtech to see this every week (or get it by email).
- [GTD] Tracks
- A Ruby on Rails web app that is multiplatform and ships with it’s own web server (if needed). Implements GTD.
- (rousette.org.uk 3630 100 2)
- [CREATIVITY] how to be creative
- From the article: ” Don’t try to stand out from the crowd; avoid crowds altogether.”
- (gapingvoid.com 3159 100 )
- [DESIGN] 15 Excellent Examples of Web Typography. Part 1
- 15 screenshots and links
- (ilovetypography.com 947 68 1624)
- [GEEK] Cory Doctorow imagines a world in which Google is evil
- Cory Doctorow short story.
- (radaronline.com 374 100 22)
- [HUMOR] lolsecretz – LOLCATS + POSTSECRET OMG!!!!!!!
- My memes have met and multiplied.
- (lolsecretz.blogspot.com 311 100 17)
- [GEEK] How History Repeats Itself and the Death of Gmail
- Joel recounts the death of Lotus 1-2-3 in modern terms and explains how Google and current AJAX apps will die when they don’t realize the changing SDK.
- (joelonsoftware.com 270 100 11)
- [CODE] 7 reasons I switched back to PHP after 2 years on Rails
- Interesting take: your new code is better because your a better programmer, not because it’s a better language.
- (oreillynet.com 259 26 30)
- [JAVASCRIPT] Code Conventions for the JavaScript Programming Language
- Good to know for writing Greasemonkey scripts.
- (javascript.crockford.com 259 24 7)
- [INTERVIEWS] Thirteen Patterns Of Programmer Interviews
- Humorous but very on-point. I wonder what the style of interviewing you perform says about your company?
- (typicalprogrammer.com 221 15 5)
- [WORKHACKS] Secrets to Amazon’s success
- From the article: ” People’s side projects, the one’s they follow because they are interested, are often ones where you get the most value and innovation. Never underestimate the power of wandering where you are most interested.”
- (37signals.com 176 26 3)
- [CODE] Everything Is Fast For Small n
- Good overview of computational complexity and why you should always test with large datasets (on slow computers :) )
- (codinghorror.com 165 10)
- [FIREFOX] Top 10 Firefox Extension-free Tabbed Browsing Techniques
- Things you didn’t know how to do with Firefox tabs.
- (lifehacker.com 83)
- [EMAIL] Save Time With Search Folders in Outlook
- Use search folders to organize your email instead of putting them in different folders
- (howtogeek.com 42 4)
- [SMO] Stumbleupon mathematics for stumblers
- A very interesting hypothesis about how StumbleUpon decides how much traffic to send to a site.
- (ventureskills.wordpress.com 40 19 5)
- [EFFICIENCY] Time Saving & Automation Round-up: Let the Computer Do the Work
- Get your computer to do the heavy lifting. I can’t spell.
- (ofzenandcomputing.com 30 2 8)
- [SMO] The Secret to Massive Digg/StumbleUpon Traffic Without Spamming
- When someone promotes your post via a social media site, SAY THANK YOU and build a relationship with them.
- (successful-blog.com 26 16 75)
- [BOOKS] Author Robert Jordan Dies
- Robert Jordan dies at 58 of a rare blood disease. Wheel of Times books left uncompleted.
- (ap.google.com 8 100 10)
- [BLOGGING] 4 reasons to write on the weekend and 4 posts to do it with
- Mu argues against taking the weekend off from blogging
- (muhammadsaleem.com 5 6 51)
- [LIFEHACKS] Nurture Your Relationships with Positive Flooding
- You need 5 positive actions for every 1 negative action in marriages, 3:1 for work
- (annezelenka.com 5 3)
- [PRIVACY] A Question of Privacy
- Good overview of online privacy, data retention, cross-referencing, etc.
- (baekdal.com 5)
- [BLOGS] Copyright Notice
- Finally a decent copyright notice for blogs! I’m going to copy it without giving any credit back.
- (angryaussie.wordpress.com 2)
- [TV] 5 Questions Season Two of Heroes Had Better F#@king Answer
- Great wrap up of Season 1 of Heroes.
- (cracked.com 100)
Legend
- saves – number of people who bookmarked on http://del.icio.us
- inbound links – number of blogs who linked to it (max 100)
- diggs – number of people who dugg on http://digg.com
This Week at Internet Duct Tape
-
9 Techniques to Promoting Your Social Web Application
How do you build a web app that has traction, gain users and hopefully explodes virally? I’ve been paying attention to this space for far too long and this is a round-up of the tricks and techniques successful and not-so-successful social web applications use to promote themselves.
-
The Problem With Social Web Applications
This is an exciting time because unlike traditional software that runs on your computer [1], web applications are created as social software where you have a friends list, collaborate on a document with multiple people and it is easily to share information and communicate. The downside is these…
-
Best of Feeds – 55 links – programming, firefox, blogging, tips, lifehacks
Tags: blogging, books, business, debugging, del.icio.us, delicious, development, digg, facebook, firefox, funny, games, geek, humor, life, lifehacks, management, organization, productivity, programming, security, smo, socialbookmarking, socialnetworking, socialsoftware, stumbleupon, tips, video
This Week at IDT Labs
-
[DELICIOUS/STUMBLEUPON] Delicious Stumbles crossposting tool
Last Greasemonkey script this week :) With Delicious Stumbles I get all of the super-useful features I like about delicious (speed, recommended tags) but I also teach StumbleUpon more about what I like without having to spend all that time cutting-and-pasting between two accounts. Submit a page…
-
[WORDPRESS] Comment Ninja
My WordPress Comment Ninja extension is available for beta test. Try it out and let me know what you think! Respond directly from the comment administration panel on your dashboard Respond by comment, email or both (without having to cut-and-paste your response!) Respond using your email…
Tags: blogging, inspiration, javascript, lifehacks, productivity, programming, rails, strategy, stumbleupon, tips
Comments Off on Best of Feeds – 22 links – programming, blogging, tips, javascript, rails

1 comment