Archive

Posts Tagged ‘Ruby’

All Ruby On Rails Versions Suffer SQL Injection Flaw

January 3rd, 2013 01:35 admin View Comments

Programming

Trailrunner7 writes with the news as posted at Threatpost (based on this advisory) that “All of the current versions of the Ruby on Rails Web framework have a SQL injection vulnerability that could allow an attacker to inject code into Web applications. The vulnerability is a serious one given the widespread use of the popular framework for developing Web apps, and the maintainers of Ruby on Rails have released new versions that fixes the flaw, versions 3.2.10, 3.1.9 and 3.0.18. The advisory recommends that users running affected versions, which is essentially anyone using Ruby on Rails, upgrade immediately to one of the fixed versions, 3.2.10, 3.1.9 or 3.0.18. The vulnerability lies specifically in the Ruby on Rails framework, and it’s presence doesn’t mean that all of the apps developed on vulnerable versions are susceptible to the bug.”

Source: All Ruby On Rails Versions Suffer SQL Injection Flaw

Typingpool: Human Audio Transcription Parallelism

December 23rd, 2012 12:19 admin View Comments

Software

theodp writes “Silly rabbit, parallel processing is not just for Big Data! Building on techniques outlined by Andy Baio back in 2008, Wired writer and 20% Doctrine evangelist Ryan Tate has released Ruby-based software called Typingpool to make audio transcriptions easier and cheaper. ‘Typingpool chops your audio into small bits and routes them to the labor marketplace Mechanical Turk,’ Tate explains to his reporter pals, ‘where workers transcribe the bits in parallel. This produces transcripts much faster than any lone transcriber for as little one-eighth what you pay a transcription service. Better still, workers keep 91 percent of the money you spend.’ Remember to Use the Force for Good, Tate adds.”

Source: Typingpool: Human Audio Transcription Parallelism

Ask Slashdot: How Should Tech Conferences Embrace Diversity?

November 20th, 2012 11:53 admin View Comments

Politics

An anonymous reader writes “The Register is reporting on how debate over diversity has managed to get a Ruby conference in the UK cancelled, as the speakers were 100% white male. The person running the conference, Chuck Hardy, said he ‘was not prepared to put [himself] in the position of legal liability and cost ramifications if a sponsor were to pull out under social media strain.’ He added, ‘The ramifications of comments such as race and gender can have financial and legal consequences for the conference organizer. Raise these issues but allow the conference organizers the chance to highlight and act on these industry level issues. Accusation and slander is not a solution.’ Should conferences embrace diversity from the start, or should they go forward even if the speakers are all of the same denomination? How far do we have to go to ensure we are diverse?”

Source: Ask Slashdot: How Should Tech Conferences Embrace Diversity?

One Company’s Week-Long Interview Process

September 10th, 2012 09:53 admin View Comments

Businesses

jfruh writes “What’s the longest tech interview you’ve had to sit through — two hours? Eight? Ruby on Rails devs who want to work for Hashrocket need to travel to Florida and do pair-programming on real projects for a week before they can be hired. The upside is that you’ll be put up in a beachfront condo for the week with your significant other; the downside is that you’ll be doing real work for a week for little or no pay and no guarantee of a job slot.”

Source: One Company’s Week-Long Interview Process

Ruby, Clojure, Ceylon: Same Goal, Different Results

June 17th, 2012 06:44 admin View Comments

Programming

snydeq writes “Charles Nutter, Rich Hickey, and Gavin King each discovered that ‘simplicity’ doesn’t mean the same thing as they developed Ruby, Clojure, and Ceylon, respectively. ‘Languages that are created with similar goals in mind may yield highly disparate final results, depending on how their communities understand those goals,’ writes Andrew Oliver. ‘At first, it surprised me that each language’s creator directly or indirectly identified simplicity as his goal, as well as how differently the three creators and their languages’ communities define what simplicity is. For Ruby, it is about a language that feels natural and gets out of your way to do what you want. For Clojure, it is about keeping the language itself simple. For Ceylon, it is a compromise between enabling the language to help, in King’s words, “communicating algorithms to humans” and providing proper tooling support: the same general goal, three very different results.’”

Source: Ruby, Clojure, Ceylon: Same Goal, Different Results

7 Real-World Tips for Attracting Top Developers

June 15th, 2012 06:00 admin View Comments

Tech startups need more than a great idea and breakthrough technology – they need a team of committed developers who will stick with them through iteration after iteration. But recruiting dream talent that’s both ready for the long haul and willing to pivot when necessary isn’t as simple as putting an ad in the classifieds, especially when the company can’t pay what these job candidates are really worth… yet.

For help, we asked seven successful young entrepreneurs from the Young Entrepreneur Council (YEC) about what really attracts rock-star talent.

(To learn more about how your startup can find, hire and keep the top talent and quality workers it needs to succeed, download this free ReadWriteWeb Report: The Talent Wars: Today’s Toughest Startup Challenge.)

While our startup founders disagreed on many details – particularly the proper role of equity – a common theme did emerge: Developer rock stars know what they’re looking for and what they want – so the onus is on the founder to communicate why his or her tech startup is special:

1. It’s Called an Employer Brand!

Most tech startups think they can attract developers with cool perks and a promise to ship great code. But those are expected variables; a Ruby rock star expects those things. Tech companies must focus on two factors: 1) What’s their brand as an employer? This means determining what’s different about working there that can’t be replicated somewhere else. This means a startup must have a clearly defined culture, mission and vision. 2) What’s the value proposition of employment? This means being honest and authentic about the reality of the job, the founders and the organization. It helps to self-select out the people that are turned off by those things, and the ones that can deal and code are in. - Susan Strayer, Exaqueo

2. Virtual Productivity Works When Recruiting

At Fetch Plus, we encourage virtual office settings for our employees, and we find that teams see this as a major benefit when trying to balance work and personal life. Plus, it gives them a sense of how a company can be truly productive without a structured garden wall found in offices. This helps to reinforce commitment and dedication to the company to employ a diverse workforce (hello, single moms and dads) while staying focused on the vision and goals of the company. It also reduces our company overhead, which can be reinvested in the team, the customers and the company. - Carmen Benitez, Fetch Plus

3. Try the Techy Angels

More and more developers have created ‘angel’ arms. That is, they fill the technical co-founder role in exchange for equity rather than cash. Finding a talented team of developers is key. Finding the right programmer usually leaves you without a designer, and on and on. You need a pretty solid squad to launch a whole concept. You Need My Guy beat out hundreds of competitors to strike a deal with KAYWEB Angels, a mobile Web and development company. This allowed us to leverage world-class talent with no cash outlay. Also, using this method aligns the interests of the developer with that of the entrepreneur – to grow the business. With the TechStars accelerator model expanding across the country, seek out these programs before you try and get your college buddy to code 5,000 hours for free. - Joe Cassara, You Need My Guy

4. Share the Partner Feel With Equity

Too many startups are stingy with equity. If you are small and do not have cash or benefits, being a nice mentor will only get you so far. If you want talent – real talent – you need to share the upside. High-quality developers have unlimited opportunities right now, both with funded startups and established companies. What they will not get at those jobs – and the only thing that you can offer when competing – is the opportunity to drive the ship! Sharing equity will let your developer know that you value them as a candidate. It will also create the faith to stick with you through a pivot. After all, your new partner will be a key decision maker toward that pivot. - Aaron Schwartz, Modify Watches

5. Whatever You Do, Don’t Offer Equity

I have heard so many developers simply scoff when someone tells them, “Hey, I have this great idea for a startup and it’s going to be awesome and profitable, but I can’t build it myself and I can’t pay you…so want to be partners?” That is not how you attract a good developer. Instead, buck up and pay them what they deserve. You may have to take out a loan or take on investors, but the pain, heartache and money you will save in the long run will outweigh the initial cost. I cannot stress enough the importance of hiring a talented developer – it’s better than hiring someone who is not qualified and will do it for $10/hour. - John Hall, Digital Talent Agents

 6. Make Them Part of the Company

In some small manner, you need to make developers part of the company. However, I would not recommend giving them an equity stake unless they are top talent that will make a major difference in your growth. Instead, give them a revenue or profit-sharing option. This will give them the long-term financial benefits that will keep them around while still allowing you as the owner to keep control of your company. - Roger Bryan, RCBryan & Associates

7. Generosity and Realistic Vision

Everyone wants to be part of something bigger than themselves. Early on, paint a clear picture of all the potential that exists. If you can get potential developer talent excited about how meaningful and profitable your project will become, there is a good chance they will want to get involved. At the same time, you must realistically acknowledge that top talent doesn’t usually work for free. Make sure you offer a compensation package that includes a combination of enough to live on in the short term, as well as the possibility of striking it rich in the long term (e.g., a paycheck plus bonuses or stock options). In this way, you will give your team both the motivation to work hard and the practical means to stay in the game for the long haul. - Robert Sofia, Platinum Advisor Marketing Strategies, LLC

The Young Entrepreneur Council (YEC) is an invite-only nonprofit organization comprised of the world’s most promising young entrepreneurs. The YEC recently published #FixYoungAmerica: How to Rebuild Our Economy and Put Young Americans Back to Work (for Good), a book of 30+ proven solutions to help end youth unemployment.

 

Source: 7 Real-World Tips for Attracting Top Developers

The 6 Best Ways to Run Microsoft’s .NET in the Cloud

June 12th, 2012 06:30 admin View Comments

In programming circles, there’s been a steady emphasis on platforms that support Ruby, Python and Node.js – and not as much attention paid to Microsoft .NET platform providers. That’s a real oversight given the enduring popularity of Microsoft languages.

For example, since Heroku was acquired by Salesforce.com in 2010, it has become the poster child of platform-as-a-service (PaaS) providers. Whenever a new PaaS launches, it gets called “the Heroku of X.” Before that, the comparison of choice was Google App Engine. Those honors are somewhat deserved, since those two services did practically invent the PaaS category as we know it.

But the .NET platform remains important, so let’s take a look at the options for running .NET applications in the cloud.

Windows Azure

Microsoft Windows Azure has been getting more attention lately for its efforts in open source than for its roots as a .NET PaaS. Microsoft has made PHP a first-class citizen on Azure, and has been porting Node.js to Windows specifically so it can run in the Azure environment. And last week’s announcement of Linux support on Azure infrastructure-as-a-service makes the fact that it can still run .NET applications almost an afterthought. Still, with “tens of thousands” of users and the legacy of being the service from the company that invented .NET, Azure remains the most obvious choice for a public .NET PaaS. But there are, of course, other options.

Tier 3

Tier 3, which launched in 2006, was originally an Infrastructure as a Service (IaaS) provider, but it added a PaaS service called Web Fabric last month. Tier 3 also develops a fork of VMware’s PaaS Cloud Foundry called Iron Foundry, which adds support for .NET to the existing open source platform and can be used for private clouds. Web Fabric is still relatively new, but it’s based on an open source platform. By building on Cloud Foundry, Tier 3 has created a polyglot platform that supports all the languages the original projects support, including Java, Ruby and Node.js. You can find the source code on Github.

AppHarbor

AppHarbor, which launched last year, is a slightly more established public .NET PaaS running on Amazon Web Services infrastructure with support for Git, (including Github for Windows) and Mercurial. One big differentiator for the company is the built-in support for unit tests. Developers just upload their code, and any unit tests included are automatically run.

“Generally most of the PaaS environments run in a way that you could add that capability, but it is a lot of work,” Tier 3 developer and PaaS enthusiast Adron Hall told ReadWriteWeb via email. “With AppHarbor a developer doesn’t even need to click a button to turn it on. I’m personally a HUGE fan of the fact that they do this.”

Uhuru

Uhuru is another newcomer, founded by former Microsoft executives. Like Tier 3, the company is running its own Cloud Foundry-based .NET PaaS called Uhuru.NET Services for Cloud Foundry. The source is on Github.

Apprenda

Apprenda was probably the first private .NET PaaS and sells a proprietary enterprise version along with a free-as-in-beer “express” version. In addition to running as a private PaaS, Apprenda can sync with Azure to enable a hybrid cloud environment.

Moncai

As of this writing Moncai hasn’t launched yet, but it does have a beta invite sign-up. The company bills itself as a .Net/Mono PaaS with support for both Git and Mercurial. It’s the only PaaS we’re aware of with Mono support.

Disclosure: Apprenda, Heroku, Tier 3 and VMware Cloud Foundry are among the sponsors of DeployCon, which paid Klint Finley’s travel expenses to moderate a panel.

Source: The 6 Best Ways to Run Microsoft’s .NET in the Cloud

Weekly Wrap-Up: Many Millennials Don’t Have More Than Basic Computer Skills and More

June 9th, 2012 06:00 admin View Comments

Weekly Wrap UpDespite a strong grasp of social media, many millennials lack real computer skills. Richard contrasts three types of social media users. Klint explains how to find out which programming language is the most popular. Learn about these stories and many more in the ReadWriteWeb Weekly Wrap-Up. After the jump you’ll find more of this week’s top news stories on some of the key topics that are shaping the Web – Location, App Stores and Real-Time Web – plus highlights from some of our six channels. Read on for more.

Millennials: They Aren’t So Tech Savvy After All

Millennials: They Aren’t So Tech Savvy After All

Even as millennials (those born and raised around the turn of the century) enter college with far more exposure to computer and mobile technology than their parents ever did, professors are increasingly finding that their students’ comfort zone is often limited to social media and Internet apps that don’t do much in the way of productivity. One professor at the University of Notre Dame, for example, reports that many of his students don’t even know how to navigate menus in productivity applications. More

Which Of These 3 Social Media Profiles Are You?

You’ve got a new piece of content you want to share, but where do you put it? Facebook, Twitter, Google+, Tumblr, Pinterest, your WordPress blog… all of the above?! With these and many other options to choose from, posting on the Web can be confusing – even a little stressful. But never fear, ReadWriteWeb is here to help. We’ve identified three main social media profiles, based on the Big 3 networks: Facebook, Twitter and Google+. More

5 Ways to Tell Which Programming Languages are Most Popular

5 Ways to Tell Which Programming Languages are Most Popular

Are older programming languages like Java and Perl giving way to newer languages like Python and Ruby? Is HTML5/CSS3/JavaScript overtaking Flash and/or native mobile application development? Do Microsoft’s languages still have a large developer following, even as Microsoft promotes other languages as first-class citizens on platforms such as Windows 8 and Azure? Finding the answer to these questions can be harder than you think. More

More Top Stories

Making the Most of Social Media Analytics

Making the Most of Social Media Analytics

Don’t believe the next social media expert who tells you “social media is intangible” when it comes to building your brand. Sure, it’s difficult to calculate a precise return on investment for social media marketing efforts: Just ask General Motors, which pulled $10 million in Facebook advertising last month because it couldn’t track measurable results. But social media reach is more measurable than some people would have you believe. More

Why London’s Police Just Set a Horrifying Precedent on Mobile Privacy

London’s Metropolitan Police recently started using machines that allow law enforcement to tap into any mobile device and download call registers, photographs, videos, SMS, email and even social networking data in under 20 minutes. Even more shocking, the information they collect will remain in the police’s possession long after the suspect is released, even if no charges are filed. A machine of this sort sounds like something that would have been found in the dank depths of some palace in Tripoli after the downfall of Gaddafi, not in a British police station. More

The United Nations Could Seize the Internet, U.S. Officials Warn

Several emerging countries are rallying behind a campaign to have the International Telecommunications Union, the U.N.’s global standards body for telecommunications, declare the Internet a global telecommunications system, U.S. officials testified on Thursday before the House Subcommittee on Communications and Technology. Led by China, Russia, India and now Egypt, which recently launched its own proposal, such a move would allow state-owned telephone networks to expand into VoIP. It would also give them the opportunity to charge fees for Internet service – and put the Internet at the mercy of international politics. More

What Ever Happened To… Start Pages

In this new ReadWriteWeb series, we look back on products that were important innovations of their time. But this isn’t merely nostalgia. As Confucius said, we’ll make it relevant by identifying lessons to apply now and in the future. We start with a product category that was all the rage in 2005-06, but is an endangered species in 2012: start pages. More

Avoiding Password Breaches 101: Salt Your Hash

“Change your passwords now. Like, every password you use on every website you have ever visited.” You may have heard this advice from tech publications and mainstream rags after password leaks were discovered at LinkedIn, eHarmony and Last.fm. It is a good idea to change passwords at least a couple times a year anyway. But the problem does not lie solely with the users. It also lies with the way companies approach password security. More

How to Jailbreak Your iPhone, iPad or iPod Running iOS 5.1.1

How to Jailbreak Your iPhone, iPad or iPod Running iOS 5.1.1

Looking to do a little more with your iPhone, iPad or iPod Touch? The latest untethered jailbreak tool for iOS arrived last week, racking up a million downloads in just a few days. Absinthe 2.0 works on most iOS 5-compatible devices, except for a later model of the iPad 2 that contains the 32-nanometer chipset. The process is incredibly straightforward and requires no technical sophistication – only a few clicks and a little bit of patience. More

Apple is Trying its Best to Kill HTC (And Doing a Pretty Good Job)

Apple is Trying its Best to Kill HTC (And Doing a Pretty Good Job)

There is blood in the water, and the big fish are circling to put the struggling, wounded little fish out of its misery. The little fish, which has some good qualities to offer the world, is having more and more trouble keeping the big fish away. This is happening now to smartphone manufacturer HTC – and the biggest fish of all, Apple, is circling in for the kill. More

ReadWriteWeb Channels

Start

Biz

Enterprise

Follow ReadWriteEnterprise on Twitter.

Cloud

Follow ReadWriteCloud on Twitter and join the ReadWriteCloud LinkedIn Group.

Hack

Follow ReadWriteHack on Twitter.

Mobile

Follow ReadWriteMobile on Twitter.

ReadWriteWeb Community

You can find ReadWriteWeb in many places on the web, a few of which are below.

Subscribe to the ReadWriteWeb Weekly Wrap-up

Want to have this wrap up delivered to you automagically? You can subscribe to the Weekly Wrap-up by RSS or by email.

Source: Weekly Wrap-Up: Many Millennials Don’t Have More Than Basic Computer Skills and More

Heroku Chief Opens the Door to More Processes, Bigger Ecosystem, Less Amazon

May 29th, 2012 05:30 admin View Comments

In an interview with ReadWriteWeb, the man who led the Heroku PaaS platform to prominence – and who continues to lead it as Executive Vice President of Salesforce – says that as his platform expands, it could certainly penetrate old barriers. One such barrier could be the ribbon, if you will, in front of a “Heroku apps store.” Another is the perimeter of the cloud that has supported it to date, Amazon EC2.

“Amazon works great as a platform for Heroku and for its customers. Every day we are expanding how much we run on Amazon, because our services are expanding so quickly,” says Salesforce’s Byron Sebastian. He’s referring to Heroku’s expansion earlier this month of its Postgres database services, with two new, smaller tiers at $50 (Crane) and $100 (Kappa) per month, as well as an entirely new process model called Cedar – rolled out Wednesday – that adds the ability to run “one-off” processes against any application being run on the platform.  That’s a huge expansion in capacity requirements in just one month’s time, and if any cloud infrastructure service in the world is capable of meeting those requirements, it’s Amazon.

A Bridge to Heroku’s Parent’s Cloud

But the pending need for such requirements led to open speculation about whether Heroku may add the option at some point for certain customers, perhaps in particular locales, to use parent company Salesforce’s infrastructure instead – maybe for a discount. In our discussion with Sebastian, he made certain we understood he’s only strengthening his commitments with Amazon. But he didn’t bat down the possibility of a home-grown alternative.

“We do hear from customers, especially as Heroku sees increased traction over the last 12 to 18 months, that large enterprises often have very specific requirements about what they want to see in the overall infrastructure,” he says. “They want to have flexibility and choice in terms of the characteristics of where they’re running their applications. So directionally, we see Heroku being able to offer customers like that the choice of different cloud infrastructures based on different operational requirements they might have. In some cases, it might be locale; in some, it might be low-latency connectivity, [such as] with the Singapore Stock Exchange; in some cases, it’s how much visibility they have into the audit trails within data centers; in some cases, it might be related to data residency, and wanting to keep data within a certain country.”

There are a number of market forces at work here. One is the equal and opposite reaction, you could say, from the so-called “consumerization of IT:” Think of it as the industrialization of service. Earlier this week, we saw a potentially game-changing breakthrough from Box.net, as it opened up service tiers to price and terms negotiation for enterprises for the first time. It’s an indication that metered service doesn’t work for everyone, especially large enterprises. Another, which Sebastian also referred to above, is the need for certain countries (especially in Europe) to keep their data within their own home territories, to avoid inspection by foreign countries’ law enforcement bodies.

“Directionally, we see giving these high-end customers more and more choice about the infrastructure that they’re running. And our long-term strategy ultimately includes continuing to expand [Heroku] to do more and more with Amazon,” Sebastian says. “Since we were acquired, we did anticipate at some point running in Salesforce [data centers]…  Heroku is very much about choice, about openness and about giving customers control and the ability to make decisions about how they want their applications and infrastructure to be run.”

An Expanded Process Model

The XVP’s comments come amid this week’s rollout by Heroku of what is hoped to be a greatly enhanced process model – the system with which the platform runs applications. Called Cedar, the new system continues to support Ruby (including work with the Rails framework), Java (including work with the Spring or Play frameworks), Python (including work with the Django framework), Clojure, Node.js, Scala and Facebook Platform. What Cedar adds is the capability to scale applications much more granularly, including manual scaling of the number of dynos (Heroku’s virtual units of work) and spinning off “one-off” processes from the command line.

“We decided very carefully that the goal was not going to be to support every language under the sun as a value proposition.”

Byron Sebastian
Executive Vice President for Heroku, Salesforce

Sebastian tells RWW that Cedar will continue to follow Heroku’s architecture of enabling different components of an application to be developed using any of the languages it supports.  “Cedar gives the developer tight control over the processes – how many processes are running, what types and so on. That, we strongly believe, is the key building block to building platform-as-a-service,” he says.

He reaffirmed a long-held belief that developers don’t particularly want to manage servers, especially since today, virtualization has rendered them artificial constructs anyway. “If you’re a developer, what matters to you if you’re thinking about computational power is the processes that are running in your processor. By creating a process model that gives developers a lot of power over how those processes are used, how they’re delegated, how they’re assigned, and so on, we’re able to give a huge amount of control back to the developer, and at the same time remove a lot of the overhead, because they don’t have to deal with these concepts of servers – which are an artificial concept that gets in the way of the developer.”

Polyglot with a Caveat

Recently, Heroku has been facing new challenges from cloud platforms including Apprenda (a .NET platform competing with Windows Azure), some of which are making the case that having too much language choice – what Sebastian calls a “polyglot cloud” – ends up confusing developers rather than assisting them. When we brought up that topic with Sebastian, he surprised us by saying that while Heroku has this broad portfolio, it has more focus than some may realize.

“Our Cedar stack enables multiple languages to be run on Heroku. But in doing that, we decided very carefully that the goal was not going to be to support every language under the sun as a value proposition. We decided it was very important that, just as people had really come to see us as the best platform for running Ruby apps in the cloud, for the other languages we introduced, we achieve a similar level of developer productivity and operational agility. There are certain specific languages that we really focus on, to be the best platform for developers to run their apps on… Focus is really important. The underlying value of the cloud platform can be applied to a number of different languages. We realized we could scale out to support additional languages, but do it properly, in a way that’s friendly to developers, providing the tools and frameworks they expect.”

An Heroku Storefront?

There are a growing number of Heroku apps available on the iTunes App Store (especially for, of all things, managing one’s own Heroku apps), as well as new customer-facing apps on the Shopify store. Does this give Heroku any ideas about pulling off its own version of, say, Salesforce’s AppExchange? While declining to give specifics, Byron Sebastian gave us substantial reason to believe there could be much more to say on that subject during Salesforce’s annual DreamForce conference this September.

“It’s very clear that, with the move toward social enterprises at Salesforce, part of becoming a social enterprise is giving [customers] the experience of being able to very quickly try, experiment, and review applications and new technologies, [and] make it very easy to purchase those applications in that marketplace… Everybody’s getting into that business, and we definitely see that part of being a social enterprise is providing marketplaces with very easy on-ramps, in order to try out applications. In the case of Heroku, we already do that with our add-ons for infrastructure for developers, but that’s a key direction for the future, and it’s part of being ‘cloud.’ “

Source: Heroku Chief Opens the Door to More Processes, Bigger Ecosystem, Less Amazon

A Utility That Makes You Master of the Twitterverse

May 23rd, 2012 05:32 admin View Comments

You can do a lot more with Twitter than the official Web, mobile and desktop clients allow. To do it, though, you’ll need to access Twitter’s API — or use a tool that digs deeper into the API than the usual clients. If you’re comfortable with a command line interface, or willing to learn how to use one, t gives you simple, fine-grained control over your Twitter stream.

The one-letter Ruby gem, t, is written by Erik Michaels-Ober. The source is available on GitHub, or you can just grab it using Ruby’s gem install command. Ruby is on most *nix type systems by default (Linux distributions, Mac OS X) but Windows users will need to download the installer to get started.

After you’ve installed the t gem, you’ll need to authorize it. You can use it without getting API access, but then you’re limited to 150 requests per hour, and you can’t use t to post a Twitter message or make changes to your account.

Using t

To see all of the commands available via t, just run t help. You’ll find that t supports more than 40 commands, or tasks as its documentation calls them. The syntax is simple: t followed by the task name, and any options and arguments.

For example, you can use t to get all of the followers for an account by running t followers username. Note that you don’t need to include the @ in front of a username.

Many of the commands are mundane operations that you can do with any Twitter client. For example, posting a status update or following another user. Running t update "message goes here" will post an update, running t follow username will follow the user that you specify, and so on.

If you’re a command-line diehard, then you might prefer using t for those operations. But its real value is in doing things you can’t do with most Twitter clients. Want to see a list of users who follow you but whom you don’t follow? Run t groupies. You can also use that command to check on other users, t groupies username.

The most interesting thing about t is that it works well with other *nix commands. For example, you can create a list (t list create listname) and add all users who are followed by another user (t followings user | xargs t list add listname. That’s just a small sample. You can use any of the standard *nix utilities with t, like uniq, which might be useful in generating lists of users to follow by examining users that other people follow (and much more).

You may bump up against arbitrary limits when adding people to lists and such. According to the Twitter API docs, you can only add 100 users at a time to a list, and a list can only have 500 users. When I tested the limit, though, I was able to add 195 users to a list with one shot. The operation failed (sort of) when I tried to add another large chunk of users (more than 400), leaving my list with 582 members. To put it another way, trial and error is called for.

Some of the t commands also support a --csv option, which you can use to dump output to a comma-separated value file and then import it into a spreadsheet.

The Bad

While t has a lot to offer, it also has a few problems. First and foremost, a few commands don’t quite work. For instance, the t stream timeline command is supposed to provide an on-going stream of your timeline. It provides the first 20, and then errors out. The “matrix” command, likewise, returns an error. The “trends_locations” task doesn’t seem to be implemented at all, as it returns a “could not find task ‘trends_locations’” error.

The error messages, in general, are pretty minimal. You may be notified “too many terms specified in query” for instance – but no information on what part(s) of a command succeeded or failed. I’ve seen a few operations that appeared to mostly succeed, like adding users to a list, but received an error notice. When that happens, it’s not trivial to figure out what worked.

Sparse documentation is another problem. Many of the commands have options that are not well-explained. You may need to go spelunking through the code to see what options are available.

Finally, it’s pretty easy to hit Twitter’s rate limit. Twitter has an hourly limit of 350 requests per hour with an authenticated client. You can bump up against the limit if, for example, you try to request a list of all users for an account with tens or hundreds of thousands of followers. Note: If you wish to check on your current rate limit, use t rate_limit. You’ll see the current limit (should be 350) and how many remaining hits you have, and the time your limit will be reset.

For the most part, though, t works quite well and provides a great way to do more with Twitter than the usual clients allow. If you’re doing more than idle chit-chat on Twitter, take a look at t.

Source: A Utility That Makes You Master of the Twitterverse

YOYOYOOYOYOYO