The Web Development Series is supported by Rackspace, the better way to do hosting. Learn more about Rackspace’s hosting solutions here.

We’ve teased you in the past with promises of code snippets from bona fide Ruby experts — for all you advanced Rubyists, here’s the code, ready for your dissection and possible implementation.

We’ve also got some more general insights from our panel of seven Ruby experts on the strengths and limitations of the Ruby programming language and their favorite Ruby apps and tools.

If you’re just starting out as a new Ruby dev, check out our tips for Ruby novices, which includes introductory-level advice from the same group of experts. And if you’re an intermediate developer looking to improve your skills, also check out tools and advice for mid-level Ruby programmers.


Jacques Crocker: Core Library Substitutes


Jacques Crocker is a Rails Jedi based out of Seattle who loves working on early-stage startup ideas and launching new products. He’s helped launch almost a dozen Rails apps this year including HeroScale.com (automatically scale your Heroku workers and dynos) and WordSquared.com (a massively multiplayer online word game). Next year, he’s planning on using Rails to launch 24 new web apps.

He says the tools in place for sharing code are one of his favorite things about the Ruby ecosystem. “GitHub and especially RubyGems.org make releasing a library to the world trivial. You’ll be able to find an existing gem for just about every API or interface you can imagine.”

When it comes to Ruby’s limitations, Crocker says, “Some of the core libraries have stagnated. Luckily, almost every crusty old Ruby standard library has a decent third-party gem alternative that usually fixes things up… Solid replacements for Ruby’s standard library are coming out every week, and it sounds like there’s some talk about Ruby 2.0 allowing an easier approach for swapping out standard libraries.”

For example, he cites using Typhoeus rather than HTTP, Nokogiri for XML, RSpec instead of Test:Unit, and Psych for YAML.

Crocker also recommends therubyracer, a library that wraps Google V8 with Ruby bindings (“I use this currently to execute CoffeeScript natively within Ruby using the coffee-script gem”), and MacRuby, which re-implements the Ruby language in an Objective-C environment for native access to Cocoa objects when building Mac apps in Ruby.


Yehuda Katz: Refactoring Code


Yehuda Katz is a member of the Ruby on Rails core team, and lead developer of the Merb project. He is a member of the jQuery Core Team and a core contributor to DataMapper. He contributes to many open source projects, like Rubinius and Johnson, and works on some he created himself, like Thor.

He says, “Even though most of the Ruby development community is focused around the Rails framework, there are standalone libraries for just about everything, like virtually every new NoSQL database and connectivity with services like Twitter and Facebook.”

Another thing Katz loves about Ruby is “the ability to refactor code from any context (including class bodies) into a method without changes to that code. The two features that make Ruby shine in this respect are executable class bodies and Ruby’s block semantics.”

Here are Katz’s examples:

If we found that we were using that attr_accessor logic repeatedly, we could extract it out into a method that we could use in multiple classes.

“This is a relatively simple example,” said Katz, “but it demonstrates the refactoring power of Ruby’s single-context approach.”

He continued that blocks have similar power.

“Consider the classic case of synchronization locks, which many languages implement as language features:”

“Ideally,” Katz says, “we’d be able to abstract the mutex lock and unlock into a synchronize method. In Java, that is impossible, because closures do not exist at all, so synchronize is a language keyword. Even in languages like JavaScript, which do have closures, it is not trivial to make this modification. Let’s take a look
at an attempt to extract the mutex lock into a separate function in JavaScript:

“The problem here is that the return in the function passed to synchronize is returning from the inner function. Moving the unsychronized code into a synchronize block does not work reliably.

“In contrast, Ruby’s blocks can handle this problem:”

“In short,” Katz concludes, “Ruby is designed around making it easy to refactor code into methods, and the single-context principle (class bodies work the same as method bodies), and Ruby’s block semantics deliver on this promise.”


Obie Fernandez: RailsForZombies and the Non-Commercial Aspect


Obie Fernandez is the founder and CEO of Hashrocket, a Florida-based web consultancy and product shop. He’s a well-regarded blogger and speaker, and he’s also a series editor and book author for higher-education publishers Addison-Wesley.

For Ruby development and deployment, he says Heroku is “amazing,” and he also recommends RailsForZombies.org, which has a web-based, interactive Rails sandbox environment. “It gives people a no-setup, no-excuses way to get started on Rails and is based on some pretty cool underlying use of the technology,” he says.

While Fernandez says he loves making money from the “competitive advantages” of the Ruby programming language, he also says one of Ruby’s strengths is its corporate independence.

“There is no big commercial vendor getting all capitalistic on us and causing problems like you see with Oracle and Microsoft and their developer communities. Almost everything that gets done in our space, 99% is done for open-source love and passion and because it is useful to the person doing it. We don’t have any big, ivory-tower producers that I’m aware of.”


Ryan Bates: Blocks and Better Memory Handling


Ryan Bates is the producer and host of Railscasts, a site full of free Ruby on Rails screencasts.

Bates says, “One thing I miss most when using another language is Ruby’s block syntax. It makes simple, everyday tasks, such as remapping an array, convenient and beautiful.”

However, he cites Ruby’s “poor support for concurrency” as one of the language’s flaws. “Being a Rails developer,” he says, “I usually do not run into this problem because it is easy to spin up multiple instances of an app. In that case, memory can be a problem. I would love to see better memory handling and management in Ruby.”

As far as clever hacks go, Bates says, “This little trick for exposing any Ruby object over the web is pretty ingenious (and madly insecure):”


Desi McAdam: Ruby’s Bad Rap for Slowness


Desi McAdam is a Ruby developer at Hashrocket. She also co-founded and regularly contributes to the technical blogging group DevChix.

McAdam says, “I am constantly surprised by the expressiveness of the language. I enjoy coding in Ruby because it allows me to write beautiful code very easily.”

When it comes to Ruby’s downsides, McAdam’s statements lean more toward the language’s reputation than its actual flaws. “I don’t know how many times someone has given me the excuse of ‘Ruby is too slow’ as a reason not to use the language. There are of course some situations where this might be true; but in most cases, it’s just not important and can be handled through other mean.”

Cool Ruby-built apps she recommends checking out are MercuryApp, which lets you track how you feel about certain things over time; DesksNear.Me, a co-working app and Rails Rumble winner; and Commendable Kids, a positive feedback system for reinforcing good behavior in kids.


Raquel Hernández: IRB, RVM, Sinatra and Homebrew


Raquel Hernández is an experienced hacker/mathematician with a background that includes many programming languages and many work environments, from freelance and contract work to startups and larger companies. However, she’s made a particular focus of Ruby and Rails.

While Hernández praises the strength of the ever-growing Ruby community, she says its biggest limitations are “speed and scalability, which are a problem today — but improvements are happening at all times to prevent this. I don’t think this would be a problem in the near future.”

She also says, “I couldn’t survive a single day without IRB. It’s one of Ruby’s most popular features.” She also recommends reading this list of tips and tricks for IRB. She likes RVM for giving her the ability to work with multiple Ruby environments, Sinatra for quickly pushing out Ruby apps, and Homebrew for OSX package management.


José Valim: Objects, Inheritance, and the builder Library


José Valim is the founder of Plataforma Tec, a web development shop and consultancy. He’s also an open source developer and a Rails Core Team Member.

Valim also sings the praises of the Ruby community, saying, “We have a community that values software craftsmanship: well-developed, tested and documented code.”

He also shares some code samples that exemplify “what makes Ruby so pleasant to work with.”

“This one shows two Ruby features: everything in Ruby is an object (including numbers!) and classes in Ruby are open for modification. This means we can extend integers in Ruby (that are Fixnum objects) with new methods.

“The example above was extracted and simplified from the Rails framework and allows you to write: 3.days.ago or 5.minutes.from_now as valid Ruby expressions. Working with time intervals is common in web applications, and such modifications make pleasant and easy to manipulate them.”

“This second example shows inheritance, Ruby blocks (pieces of code that can be passed around and invoked on demand) an
d method contracts. Most languages implement switch/case statements (which in Ruby is called case/when) internally. Ruby, on the other hand, specifies that, in order to pass an object to a when statement, you just need to implement a method named ===. While the example above is simple and could be implemented using if/else statements, it shows the flexibility you can achieve with the Ruby language as everything is an object and as the language relies heavily in method contracts.”

“The last example uses a third-party library called builder that makes XML creation simple. It relies on a feature from Ruby called method_missing. Every time you invoke a method in a Ruby object and this method is not defined in it, Ruby invokes a method called method_missing that should handle the scenario accordingly. In this case, the builder library implements this method in a way that makes XML creation a breeze.”


Specific Questions or Tips?


If you’re a crack Ruby developer and you have a question, feel free to drop it in the comments! Our panelists are likely to stop by with more feedback.

Likewise, if you you feel like answering questions or passing on some great advice of your own, please leave a comment and school us all.


Series supported by Rackspace


rackspace

The Web Development Series is supported by Rackspace, the better way to do hosting. No more worrying about web hosting uptime. No more spending your time, energy and resources trying to stay on top of things like patching, updating, monitoring, backing up data and the like. Learn why.


More Dev & Design Resources from Mashable:


The Top 8 Web Development Highlights of 2010
HOW TO: Get More Out of Your Fonts
4 Predictions for Web Design in 2011
HOW TO: Make the Most of TextMate
5 Free Annotation and Collaboration Tools for Web Projects

Image of José Valim courtesy of Flickr, levycarneiro.

More About: advanced, advice, developers, hacks, rails, ruby, ruby tips series, tips, web development series

For more Dev & Design coverage:




icons image

It’s been another busy week at Mashable. We’ve hired a San Francisco Bureau Chief and sent our own Pete Cashmore to Davos. Still, the team was able to turn out another lineup of tools and resources from the past week or so for your reading pleasure.

Scroll down for infographics on the size of the web and an illustrated history of social media. We’ve also got some hands on demos and a look at some nifty LinkedIn features to help your company.

Looking for even more social media resources? This guide appears every weekend, and you can check out all the lists-gone-by here any time.


Social Media


For more social media news and resources, you can follow Mashable’s social media channel on Twitter and become a fan on Facebook.


Tech & Mobile


For more tech news and resources, you can follow Mashable’s tech channel on Twitter and become a fan on Facebook.


Business


For more business news and resources, you can follow Mashable’s business channel on Twitter and become a fan on Facebook.

Image courtesy of Webtreats

More About: business, Features Week In Review, gadgets, List, Lists, Mobile 2.0, social media, tech

The Web Development Series is supported by Rackspace, the better way to do hosting. Learn more about Rackspace’s hosting solutions here.

The first public alpha of Sublime Text 2 is now available for download.

Sublime Text is a modern text editor, previously only available for Windows, but the latest version also includes support for Linux and Mac OS X.

The Sublime Text team has been working hard on Sublime Text 2 for the last few months, initially only offering preview releases to registered users. By releasing the alpha to the public, the developers hope to help get some user feedback and bug reports.

While certainly still a “late stage alpha,” Sublime Text 2 is already showing a lot of promise. As a die-hard TextMate user, I immediately took to the program like an old friend.

The user interface is clean and well thought out. A sidebar for projects or files can be turned on or off and files can also be accessed through Chrome-style tabs. One of the best things about Sublime Text — from a TextMate user’s perspective — is its support for multi-pane editing. This include horizontal and vertical split-views and even a quad pane mode.


Fun Features


One of the standout features in Sublime Text 2 is called “Goto Anything.” Goto Anything makes navigating and switching between files super easy. Simply press CMD+P (CTRL+P for Windows/Linux users) and start typing. Typing part of a file name or part of a line of code within a file will search across not only current files in your project or open files, but also recently closed files.

Goto Anything is super fast, and thus very effective. As a TextMate user, I’ve grown accustomed to AckMate for my project searching needs, but Goto Anything is much more seamless. Users can even browse by symbol or go directly to certain line numbers all from this command.

Sublime Text 2 also features instant project switching. This is useful because it will load modified and unsaved files in a workspace on the fly. Switching projects is fast — just like using Goto Anything — and switching back to a project opens it just as it was before.

Some of the best features from Sublime Text 1, including multiple line selections and a great minimap preview window, are carried over into Sublime Text 2.


A Customizer’s Dream


The beauty of Sublime Text is that everything is very customizable. This is important because a text editor becomes a very personal part of a user’s workflow.

As a writer, I have my text editor customized in such a way that helps speed up my writing. The same is true for developers. The reason that classic text editors like Vim and Emacs continue to have such followings is in part, because of how customizable those editors are. Likewise, the extensibility of TextMate is something that has kept that project alive and in use, despite its dormant development cycle.

Sublime Text 2 has the making of a great text editor for customization nerds. Sublime Text can be extended using plugins written in Python (a full Sublime Text 2 API is slated for release in the coming months). Key bindings are fully customizable, as are themes (many TextMate themes are compatible). Per-file and per-project settings can also be customized.

For coders or writers looking for a new text editor, Sublime Text 2 is definitely worth checking out. The fact that it runs on Mac OS X, Linux and Windows makes it a rarity in the modern editor space.

What text editor do you use? Let us know in the comments.


Series supported by Rackspace


rackspace

The Web Development Series is supported by Rackspace, the better way to do hosting. No more worrying about web hosting uptime. No more spending your time, energy and resources trying to stay on top of things like patching, updating, monitoring, backing up data and the like. Learn why.


More Dev & Design Resources from Mashable:


The Top 8 Web Development Highlights of 2010
HOW TO: Get More Out of Your Fonts
4 Predictions for Web Design in 2011
HOW TO: Make the Most of TextMate
5 Free Annotation and Collaboration Tools for Web Projects

More About: mac apps, software, sublime text, sublime text 2, text editors, textmate, web development series, windows apps

For more Dev & Design coverage:

Encoding.com launched a new, easy video-encoding service called Vid.ly in private beta Monday. Using Vid.ly, users can upload a video file and serve it to multiple devices and web browsers all from a single URL.

Vid.ly simplifies and automates the process of not only transcoding video into multiple formats (WebM, H.264, Ogg, etc.) but also selectively serving that video to various device types.

For content creators who don’t want to use Vimeo or YouTube, finding a way to encode, transcode and serve video in multiple formats to multiple devices can be frustrating.

Once largely concentrated around mobile devices like smartphones and tablets, these frustrations have extended to the desktop in recent weeks. Google’s decision to phase out H.264 support in its Chrome browser, at least in regards to HTML5 video, has created a new set of problems.

HTML5 video (or to be more specific, H.264-encoded HTML5 video) was supposed to be our savior; instead it has just become another complication.

With Vid.ly, Encoding.com hopes to help alleviate some of the pain.


How it Works


Using the web browser, users can upload video (up to 1GB in size for the standard free accounts) to Vid.ly. The uploader is robust, supporting FTP and HTTP uploads, standard local file uploads, and cloud services from Amazon S3 and the Rackspace Cloud.

Then, using Encoding.com’s encoding scripts, that video is converted into more than a dozen different formats and sizes. The resulting video is served from a single URL, vid.ly/XXXX.

Users can share that short URL, and browser detection will determine what version of the video is played back. Even better, Vid.ly offers an HTML5 embed code that can be used on web pages or blogs, as well as access to a VP6 Flash file for use with custom players.

What this means is that content creators who want to serve HTML5 video to all visitors don’t need to worry about using Ogg for some browsers, WebM for others and H.264 for the rest — the HTML5 embed code will work across the board.


Pricing


In its private beta, Vid.ly is offered as a free service. File sizes are limited to 1GB and profiles cannot be adjusted.

In the next few months, a professional version, Vid.ly Pro, will become available. Vid.ly Pro won’t have the file size limitations; instead, it will let users customize encoding profiles and will support adaptive bitrate for iOS devices. Vid.ly Pro users will also be able to use Vid.ly with their own CDN.

Encoding.com President Jeff Malkin tells us that — aside from the professional accounts — the company hopes to benefit from the Vid.ly landing page and branding from URLs shared across social networks and SMS.

Until now, Encoding.com has primarily targeted more professional users. Vid.ly can certainly be leveraged by professionals, but there is a lot of potential for consumers with more minor video needs.


Invites


Encoding.com was nice enough to give Mashable access to 1,000 invites to Vid.ly.

To sign up, simply go to http://vid.ly and enter the code MASHABLE2011

Once the code is entered, users can try out the beta, upload videos and invite others to join.

More About: encoding.com, HTML5, html5 video, mobile video, vid.ly, video codecs, web video

For more Dev & Design coverage:




icons image

The cold snap may not have “snapped,” but all that winter chill hasn’t prevented Mashable from churning out another set of social media tools and resources.

Have a read through resources below for a perspective on Wikipedia’s short life and it’s prospective future, or how videos games are helping social good. Tech & Mobile has some tips for Ruby and some odd Apple patents. Business offers up some case studies and how marketers can optimize crowdsourcing.

Looking for even more social media resources? This guide appears every weekend, and you can check out all the lists-gone-by here any time.


Social Media


For more social media news and resources, you can follow Mashable’s social media channel on Twitter and become a fan on Facebook.


Tech & Mobile


For more tech news and resources, you can follow Mashable’s tech channel on Twitter and become a fan on Facebook.


Business


For more business news and resources, you can follow Mashable’s business channel on Twitter and become a fan on Facebook.

Image courtesy of Webtreats

More About: business, facebook, Features Week In Review, List, Lists, Mobile 2.0, small business, social media, tech, technology, twitter

Developers interested in creating cross-platform mobile apps have a new tool for their arsenals in The-M-Project. The-M-Project is an HTML5 JavaScript framework that targets iOS, Android, BlackBerry and webOS platforms.

Think of it as jQuery Mobile with the added bonus of a NodeJS based build tool. The project is new and in the very early alpha stages, but it already looks very promising.

The-M-Project has its own git repository that you can fork or download to your own system.

The project files include all the UI and Core files from jQuery Mobile. The real special sauce with The-M-Project is its build tool, Espresso. Espresso was written in JavaScript using node.js and with it you can build your code and run it on a built-in server. Espresso is available bundled with The-M-Project or you can download it from its git repository.

All right, so that all sounds good and geeky, but what exactly can this project do? Well, as we said, the project is still in its infancy but already the developers have put together some sample apps that show off some of what you can do.

This screenshot shows off the Twitter demo and the app. Accessing the app from an iPhone or Android device brings together an experience that feels very similar to that of a native iOS app. What is particularly cool — and this is the jQuery Mobile base — is that you can adjust your browser window’s size to see how the UI elements scale up or down.

If you want to explore the insides of the sample apps, you can check the source code out on Git Hub.

The team behind The-M-Project, M-Way Solutions, has a basic roadmap outlining its plans for the project. The first public release is out now but future updates will be coming soon and the production ready 1.0 version is scheduled by the end of 2011.

Developers that want to contribute by filing bug reports and submitting patches can go to Git Hub or look at this page for more information.

What do you think about JavaScript/HTML5 mobile app frameworks and tool kits? Is this where mobile app development is headed? Let us know your thoughts.

More About: HTML5, javascript, jquery, jquery mobile, mobile app development, mobile apps, node, node.js, the-m-project

For more Dev & Design coverage:

The Web Development Series is supported by Rackspace, the better way to do hosting. Learn more about Rackspace’s hosting solutions here.

If you’ve been hacking away in Ruby for a while and are looking to take your skills to the next level, our panel of seven Ruby experts has a few words of advice for you.

Below are some helpful hints, personal growth-inducing exercises, and tools recommended by some of the best Ruby devs out there. And of course, we welcome any tips or advice you have to give in the comments.

If you’re looking for advanced-level code snippets, stay tuned for the next installment in this three-part series on Ruby. And if you’re just starting out as a new Ruby dev, check out our tips for Ruby novices, which includes introductory-level advice from the same group of experts.


Jacques Crocker: Create a Library of Snippets


Jacques Crocker is a Rails Jedi based out of Seattle who loves working on early-stage startup ideas and launching new products. He’s helped launch almost a dozen Rails apps this year including HeroScale.com (automatically scale your Heroku workers and dynos) and WordSquared.com (a massively multiplayer online word game).

His advice for intermediate Ruby devs is to “build an executable snippet library.” He explained:

“Every time I write some code that I think could have potential for reuse in another project in the future, I copy and paste it into a unit test within a private ‘snippets’ project. This allows me to go back and pull out snippets of functioning example code whenever I confront the same problem again. The most important thing is that this code is executable, and has associated tests.

“Use this as a replacement for IRB [the Interactive Ruby Shell]. Instead of loading up an IRB instance to verify that some code works, I open up my snippets project in TextMate and start writing some unit tests to get the code working. Running these snippets within TextMate is even easier than IRB (cmd+r).”


Yehuda Katz: Get to Know the Ruby Object Model


Yehuda Katz is a member of the Ruby on Rails core team, and lead developer of the Merb project. He is a member of the jQuery Core Team and a core contributor to DataMapper. He contributes to many open source projects, like Rubinius and Johnson, and works on some he created himself, like Thor.

He tells intermediate Ruby coders to “spend some time to properly understand the Ruby object model. Specifically, understand what singleton classes are and how they are used.

“It’s possible to muddle along for a long time in Ruby without understanding it, but it will add a lot of complexity to your mental model, because you’ll be creating many imperfect abstractions in your mind when the reality is much, much simpler.”


Obie Fernandez: Go Easy on Metaprogramming


Obie Fernandez is the founder and CEO of Hashrocket, a Florida-based web consultancy and product shop. He’s a well-regarded blogger and speaker, and he’s also a series editor and book author for higher-education publishers Addison-Wesley.

For mid-level Rubyists, he advises them to not “go crazy” when it comes to metaprogramming.

“There is definitely a curve in your adoption of Ruby when you start getting comfortable with the core language features and start exploring some of the wilder possibilities. For me it was a little over a year in when I started doing a lot of DSL (Domain-Specific Language) stuff in Ruby.

“When you get into heavy usage of instance_eval, friends, your code starts getting more and more difficult to understand and maintain. Yes, Ruby has incredibly powerful metaprogramming powers, but if you’re using them in your day-to-day application programming, I’m going to bet you’re doing it wrong.”


Ryan Bates: Use the Source, Luke


Ryan Bates is the producer and host of Railscasts, a site full of free Ruby on Rails screencasts.

“Don’t be afraid of diving into the source code when you don’t understand something,” is Bates’s advice to intermediate Ruby programmers.

“Ruby libraries are often lacking in the
documentation department, but the code is generally readable. If there are tests, those can also help show you how the code is intended to be used.

“Reading other code is one of the best ways to improve your code as well.”


Desi McAdam: Dive Into IRB and Code Katas


Desi McAdam is a Ruby developer at Hashrocket. She also co-founded and regularly contributes to the technical blogging group DevChix.

McAdam says that for her personal growth as a Ruby developer, “Playing around in IRB is something that has helped me. One example of this is opening up classes, extending them, including them, etc., to see how the method calls happen in one way versus another. It really helped me understand when to use extends versus when to use includes.”

She also said that code katas, études for programmers, have been extremely useful in helping her improve her Ruby skills. “There are a bunch out on the web, and it’s a really good way to beef up your Ruby knowledge because the exercises prod you into certain aspects of the language you might not otherwise hit in your everyday Ruby coding.”


Raquel Hernández: Follow Others’ Code and Conversations


Raquel Hernández is an experienced hacker/mathematician with a background that includes many programming languages and many work environments, from freelance and contract work to startups and larger companies. However, she’s made a particular focus of Ruby and Rails.

She said that reading and researching other developers’ code is the best way for an intermediate Rubyist to improve his or her skills. “Don’t just install a gem; look at how things work internally.

“I also try to follow other Rubyists on Twitter; the same for code projects on GitHub, conversations on mailing lists, newsletters, etc. — everything that helps me keep up-to-date.

“Recently I started following Ruby Best Practices — Practicing Ruby, The Newsletter. It’s pretty good for intermediate or advanced Ruby devs.”


José Valim: Code Open Source Projects


José Valim is the founder of Plataforma Tec, a web development shop and consultancy. He’s also an open source developer and a Rails Core team member.

In addition to reading source code from other developers and other projects, Valim recommends that intermediate Ruby devs get involved with open source projects, themselves. “You can learn a lot by doing these activities… Ruby’s community is responsible for several open source projects, conferences, tutorials and blogs that improve and bring new ideas into the Ruby ecosystem every day.”

As an open source developer, he also encourages more women specifically to get involved in open source Ruby coding.


Specific Questions or Tips?


If you’re an intermediate Ruby dev and you have a question, feel free to drop it in the comments! Our panelists are likely to stop by with more feedback.

Likewise, if you’re a more experienced Ruby dev and you feel like answering questions or passing on some great advice of your own, please leave a comment and school us all.


Series supported by Rackspace


rackspace

The Web Development Series is supported by Rackspace, the better way to do hosting. No more worrying about web hosting uptime. No more spending your time, energy and resources trying to stay on top of things like patching, updating, monitoring, backing up data and the like. Learn why.


More Dev & Design Resources from Mashable:


The Top 8 Web Development Highlights of 2010
HOW TO: Get More Out of Your Fonts
4 Predictions for Web Design in 2011
HOW TO: Make the Most of TextMate
5 Free Annotation and Collaboration Tools for Web Projects

Image of José Valim courtesy of Flickr, levycarneiro.

More About: advice, developers, expert, intermediate, rails, ruby, ruby tips series, tips, web development series

For more Dev & Design coverage:

Appcelerator, a platform for mobile and web development, has just announced its acquisition of Aptana, an integrated development environment (IDE) for web apps.

Together, both entities hope the new offering will be the best suite of tools for designing, developing and deploying cloud-connected apps, particularly for enterprise-level applications.

Mac, iPhone and iPad

Fans of Node.js will appreciate today’s finding: NodeFu, a sort of Heroku for Node.js.

The incredible success of Node.js last year was one of the top web-dev highlights of 2010. And the advent of more web-based development tools and more open-source tools was one of our predictions for 2011.

So it makes perfect sense to us that a developer has created an open-source hosting platform for Node.js.

NodeFu is a free way to deploy Node.js applications (here’s the source on GitHub). It’s a cool toy for devs who are experimenting with the hot new framework on the block.

NodeFu’s creators write on the site (which is rather bare bones, as NodeFu is currently more about the API than the pretty packaging), “We started this project because the ‘other’ Node.js hosting services was not sending out coupon invitations. Now anyone can host Node.js apps!”

NodeFu is currently running Node v.0.3.5 and updates all Node Package Manager modules weekly. Git is required to push updates to NodeFu.

Here’s a video explaining the origins of NodeFu and a walkthrough of how to use the site and the service:

More About: foss, heroku, node, node.js, nodefu, open source

For more Dev & Design coverage: