Twitter Engineering Weblog

The Twitter Engineering Blog: "Welcome! I'm Ben, and I'm an engineer at Twitter. We've started this blog to show some of the cool things we're creating and tough problems we're solving." - Besides having interesting content I love how clean the design is. Oh, if you're in the market for a job, check out the jobs listed in the right column, they have quite a few, and they're very interesting. If you're into Ruby, Java, Python, PHP, JavaScript, HTML and CSS you may be a nice fit!

Also, check out their photo stream on Flickr, it's nice to be spoiled.

Labels: , , , , , , , ,

Posted by Rob at 9:46 AM | 0 comments | Click here for a permalink to this entry.

Ruby on the Mac

Mac RubyMacRuby: "The new MacRuby 0.5 runtime is built upon LLVM, a compiler infrastructure also sponsored by Apple. Thanks to LLVM, MacRuby is able to transform the Ruby abstract syntax tree (AST) from the parser directly into highly optimized machine code. MacRuby supports both Just in Time (JIT) and Ahead of Time (AOT) compilation. The JIT mode will compile down the code at runtime, and the AOT mode will allow you to save on disk the compilation result. AOT compilation makes MacRuby a true Ruby compiler." - Hmmm, how long until we have full support in XCode for building compiled Ruby? Then, that begs the question, how long before we see native compilation of Ruby for the iPhone?

Labels: , , , ,

Posted by Rob at 2:28 PM | 0 comments | Click here for a permalink to this entry.

View from a C++ noob

Armin Ronacher: "I just recently started using C++ for university (about two months ago) and still have a hard time accepting some of the weird syntax rules and semantics. For someone that mainly does Python development C++ feels very unnatural. In Python the syntax is clean and there are no ambiguities. C++ is drastically different in that regard. I know there are tons of resources on the net about C++ pitfalls already, but I thought I have to add my own for people switching to C++ with a background in Python and/or C." - I forgot how daunting C++ can be coming from another language. I struggled with C pointers for the longest time after coming from BASIC, then a dear friend said these words to me.

* means contents of
& means address of

That's all it took. From that day forward I could deal with pointers.

Python looks weird to me, especially the whole indentation thing.

Python is one of those languages high on my list of languages to learn, which also includes Ruby and Smalltalk. Objective-C wasn't on there, but I'm knee deep in it now. I believe Objective will be a good sprintboard to learning Smalltalk, either that or a hinderance.

Labels: , , , ,

Posted by Rob at 10:30 AM | 0 comments | Click here for a permalink to this entry.

They still exist "Besides building something meaningful, here's why you'll love working here:
  • We're a start-up: it's fun, dynamic, and you will make a difference.

  • We've got smart people without bureaucracy or politics.

  • We work in a loft (no cubes here!) in the heart of Downtown Los Angeles: a short subway ride or drive away from most of the city and walking distance from music, art galleries, restaurants, apartments, and night life.

  • We're funded by top-tier venture and angel investors who have helped build companies such as Sun Microsystems, PayPal, Juniper Networks, Good Technology, and Symantec.

  • We offer generous salaries, benefits, and stock options.

  • You'll have the important, little perks such as a fast computer with two big monitors, a laptop, a smartphone, and free food and drinks."

  • There are still great opportunities out there for developers, with great perks! If you're a web guy, JavaScript and CSS, and have Ruby experience this could be a great gig.

    Labels: ,

    Posted by Rob at 7:19 AM | 0 comments | Click here for a permalink to this entry.

    Hosting IronPython and IronRuby

    Michael Foord: "An exploration of how to embed Dynamic Language Runtime engines into .NET applications (C# or VB.NET). It addresses topics like presenting an API from your application to user code, handling errors and how to interact with dynamic objects from a statically typed language." - This is pretty intriguing. I wondered aloud the other day about why you'd want to host things in a shell, but hosting the DLR interactively inside an application, hmmm sounds like SmallTalk, would be extremely cool.

    This is the sort of thing guys like Adam Stone, or Chris Roth, would come to love in Visio. Heck, this is something I'd love to have time to work on myself.

    I had begun to put a grammar together for a Visio specific language, for shape building, but haven't pursued it any further. It would've been hosted inside the DLR, which could then be hosted using these techniques. I'd still like to do it.

    Labels: , , , , ,

    Posted by Rob at 5:57 PM | 0 comments | Click here for a permalink to this entry.

    Publishing Static Pages

    Brent Simmons: "Itís more than just a weblog system, though: itís a small content management system, complete with templates and macros and snippets and all that good stuff. Iíll be able to use it to create the help manual for NetNewsWire and to manage the appcast feeds (both of which Iíve been doing by hand, to my extreme horror)." - Brent talks about his new CMS he's written in Ruby. Go read the entire post, it's quite good. He talks about his time at UserLand and how Dave Winer, and his time working for him, influenced his design.

    I've looked at different weblogging systems over the years. I've wanted to replace Blogger, but I can't find a system that works the way I want. I used Radio, but didn't like the UI and it ran on my local machine. I gave WordPress a try, and loved it, but I really like the idea of publishing static pages. I don't want them generated with each hit of the website, a static page is just fine, and it's what I want. You'll notice old pages on this site do not change when the site look changes, that is important to me. So, until I find that perfect mix of CMS and weblogging system, that runs on the backend, publishes static pages, and allows me to use a client side application to post to it, I'll keep using Blogger.

    Labels: , ,

    Posted by Rob at 11:00 AM | 0 comments | Click here for a permalink to this entry.

    IPy 2.0

    Harry Pierson: "This is a very pretty sight. Itís a screenshot from the IronPython CodePlex home page showing that 2.0 is the 'current release'. Yes thatís right, dear reader, IronPython 2.0 has officially been released!" - The dynamic language guys have been doing a great job, we have IronPython, IronRuby, and the DLR thanks to them. Well done, and congratulations.

    Labels: , , , ,

    Posted by Rob at 8:17 AM | 0 comments | Click here for a permalink to this entry.

    IronRuby on Rails "ironruby running unmodified rails!" - That's pretty darned sweet.

    Update: John Lam: "IronRuby doesnít just let you run Rails; it lets you interact with the rich set of libraries provided by .NET. Youíll be able to use IronRuby to build server-based applications that run on top of ASP.NET or ASP.NET MVC. Youíll be able to use IronRuby to build client applications that run on top of WPF or Silverlight. Youíll be able to use IronRuby to test, build and deploy your .NET applications. Youíll be able to run Ruby code in your web browser and have it talk to your Ruby code on your web server. Thatís a feature that we feel that many folks will enjoy." - Wow.

    Labels: , ,

    Posted by Rob at 8:06 PM | 0 comments | Click here for a permalink to this entry.

    Great post on Twitter issues

    Dare Obasanjo: "The problem is that if you naively implement a design that simply reflects the problem statement then you will be in disk I/O hell. It won't matter if you are using Ruby on Rails, Cobol on Cogs, C++ or hand coded assembly, the read & write load will kill you." - Go read it if you're a Twitter user, especially if you've been bashing Ruby on Rails. Their problem goes way beyond their language/platform of choice.

    Labels: ,

    Posted by Rob at 8:34 PM | 0 comments | Click here for a permalink to this entry.

    Getting Started with Ruby on Rails

    A List Apart: "ouíve probably heard about Ruby on Rails by now. Your developer friends are raving about itótalking about how they wrote an application in less than half the time it would have taken using some other technologyóhow they really enjoyed themselves instead of stressing out, and then spent their extra time on the beach. Rails sure does sound like a pretty compelling technology. But what is it, and how does it fit into the big picture of web development?"

    Labels: ,

    Posted by Rob at 10:13 PM | 0 comments | Click here for a permalink to this entry.

    IronPython and Visual Studio

    Harry Pierson: "We've hired a few people around here recently (including me obviously). However, if you have a burning desire to work on IronPython (or IronRuby) and Visual Studio, we're still hiring" - This is exactly what's needed to make IronPython and IronRuby really slick! Complete integration into the Visual Studio IDE. Make them first class citizens.

    Labels: , , , ,

    Posted by Rob at 5:49 PM | 0 comments | Click here for a permalink to this entry.

    Silverlight, IronRuby resources "There are other people that have blogged about silverlight and IronRuby before, it might be a good idea to check them out as well." - Tagged for later.

    Labels: , , ,

    Posted by Rob at 9:43 AM | 0 comments | Click here for a permalink to this entry.

    Sax on Ruby

    Mike Sax: "For the last two years or so I have really enjoyed Ruby. So much, in fact, that I may have become a Ruby-snob." - It would seem a lot of old curly bracers are beginning to embrace Ruby, and why not. In our ever evolving world of computing the net is where it's at, much to my own chagrin. Ruby seems a perfect fit for the server, even with its' reported performance issues.

    Labels: ,

    Posted by Rob at 9:42 AM | 0 comments | Click here for a permalink to this entry.

    Windows losing ground with developers?

    The Server Side.NET: "Microsoft is not dead, and it is not dying. Rather, the company's decline in market share is a runny nose." - I can definitely see this happening with the focus clearly on web based stuff. If you're doing client side applications Windows is pretty hard to beat, unless you're doing Mac applications, but the server side has a ton of dynamic language support with frameworks that allow folks to be highly productive and it's all free; Ruby + Rails, Python + Django, etc... On Windows we have those two plus we have ASP.NET and [insert your favorite .NET language here], but is that really an advantage? In short No. The real answer is Yes and No. For me it would be easier to use ASP.NET and C# because I already have experience with ASP.NET and C# is super easy to transition to because of my C/C++ background. Sure I could pickup Ruby and/or Python, but I'd need a bit of time to become as proficient with it as I am with C/C++. Who knows in the end it may be well worth my time to be a Ruby/Python dude, only time will tell.

    Hey, have you looked at C#'s upcoming LINQ implementation? Check out Scott Guthrie's series on LINQ; Part 1, Part 2, and Part 3. It's going to make life more productive for the C# developer, that for sure.

    Labels: , , , ,

    Posted by Rob at 8:22 AM | 0 comments | Click here for a permalink to this entry.


    Rob Fahrni has been a Software Developer for 20 years. He's developed DOS, Windows, Linux, iPhone, and Palm based applications in C, C++, Objective-C/Cocoa, C#/ASP.Net, and, yes, even BASIC...
    About >>

    CrabApples.NET Home Kim Fahrni, Hacker Widow Haileigh Fahrni, My Culinary Journey Taylor Fahrni, Goin' Buggy Jerry Fahrni, Pharmacy Informatics and Technology

    Apple Core Labs, LLC RxCalc - A Pharmacokinetic Calculator for iPhone


    I work at Pelco. The opinions expressed here are my own, and neither Pelco nor any other party necessarily agrees with them.

    Subscribe to ATC Send e-mail to Rob Follow me on Twitter. My Profile on LinkedIn.