- Spider the web with Anemone – from RubyInside, a Nokogirl dependent mutilthreaded web spidering library, by the looks, it’s awesome and could be useful.
- Running Sub-processes in ruby – as in command line invocation. fun.
- Free icons sets – i love those tiny icons. they make me a happy elad.
- Awesome CSS templates – XHTML, and non standard layouts… cool.
Bag O' Links - 2/7/2009 0
Bag O' Links - 1/7/2009 0
- Fat free CRM – CRM in Rails, nice.
- RubyRep, JRuby database replication – Simple and clean, supports only Postgres and Mysql for now.
- Using HTML5 today – @NewSwf, this one is for you :), although expected fully only in 2022 (pessimistic somewhat), there’s no need to wait for all the browsers to care about HTML5, you can start goofing around today.
- Mike Gunderloy ‘Rails Rescue Handbook’ – got a broken app? this awesome book by the awesome Mike Gunderloy is exactly what you need to get your project back on track.
- Develop a Facebook application lessons – This guy is stepping into hell (in PHP for that matter), i sure as hell would like to see how he gets around the awful, dreadful, hideous Facebook API.
In other matters, the offical Railsbridge was released today, no thanks to me. i was supposed to lead this thing into it’s first step, but was unable to exclude myself out of the day to day tasks who overtook me by numbers. Thanks to Mike Gunderloy and the other awesome, amazing Railsbridge dudes who did it all by themselves and made it real. you guys rock and i will repay my debt to society.
That’s it.
Bag O' Links - 30/6/2009 0
Yeah, i know… it has been a while since i last posted, i have been way to busy with @statussearch and a trip to Israel in order to get to this blog.
Hopefully this week will head on for a better direction from now on.
- Dynamic Reporting in Rails – Looks like an awesome plugin for Rails applications reporting, it even has charts built in. (euuuu!).
- Webbynode VPS hosting – Some new VPS hosting claiming to be for developers, don’t know what it means but they are cheaper than Slicehost, probably will check it out.
- Free CSS templates – nice, some none-column examples, haven’t checked the real code though, could be hell.
- Equal vs. Same in Ruby – i love this guy’s articles.
twitter_auth plugin and the new twitter PIN 1
UPDATE #1: Apparently, the response.body is truncated sometimes so the JSON parser fails, what’s ever weirder is that once ever few refreshes (going back to my authentication page on my app and trying again), it’s not truncated and the authentication is successful.
UPDATE #2: Well, after debugging some more, it appeared to be that the response arrived truncated from twitter, obviously i had nothing to do with it but to rant, so i decided to go to bed. Now, 7 hours later it seems like all is ok and the response is valid and complete.
ORIGINAL POST
Twitter recently added a new feature, they decided to require the end user to enter a pin number to approve desktop applications in order to keep away spoofed messages.
Well, it’s a nice idea if they were kind enough to help the programmers out and not make things complicated. When you setup your application, you can determine whether your app is a Desktop or a Web app, and the new PIN feature should impact only desktop apps as they say.
But, when you try to authenticate (OAuth) it seems like that they treat your application as a desktop app *if you include an oauth_callback parameter in your authentication GET request”.
The fix for that is pretty simple, remove the “oauth_callback” parameter from your twitter_auth.yml and add the following fix to prevent the OAuth gem from including a default oauth_callback parameter into your requests.
OAuth::Consumer.class_eval do
def get_request_token(request_options = {}, *arguments)
response = token_request(http_method, (request_token_url? ?
request_token_url : request_token_path), nil, request_options,
*arguments)
OAuth::RequestToken.from_hash(self, response)
end
end
Now twitter recognises your app as a web app (as it should already).
But it’s still wrong, when twitter redirects back to your app, it sends what appears to be a hash containing the logged in user info in a JSON format. but for some reason on the OAuth shared.rb file the JSON.parse call raises a ParseError 618 (whatever that means) when trying to parse the user info hash.
This error basically causes (as you can see in the code) to pass on the plain text response.body and eventually raise an error in here when it assumes an hash was passed in (but its a plain string) (NoMethod key? for String).
I am totally hopeless as of this moment, @mbleigh, the awesome author of the twitter_auth plugin said he’ll be working on it soon, hopefully he’ll come to the rescue soon.
Bag O' Links - 30/5/2009
- Formatting logger with a Logger subclass – Looking at Apidock ’s comments, i often find treasures like this.
- A Django developer’s views on Rails – hehe, funny “ruby is annoying cause there is more than one way to do something”... right…
- 100 Mac applications you might like – ok not ALL of them, but some are useful.
- Access GitHub API with javascript – a library to rule them all.
- Statistics – an ActiveRecords reporting plugin – This ActiverRecord plugin allows you to easily define and pull statistics for AR models. looks pretty awesome.
- A collection of Rack middlewares – it’s for you guys, i’ll never use Rack.
Bag O' Links - 28/5/2009
- Super Deploy with Capistrano – a collection of useful capistrano recipes.
Ya, That’s it… my RSS feeds are so boring lately, i need some new subscriptions :)
Bag O' Links - 26/5/2009
- the other javascript libraries you might need – aside from the wonderful full stack frameworks, you might need some extra features (sound for example) that these frameworks does not supply.
- Recurring credit card payments with ActiveMerchant – Just when i needed it.
- “Be a better developer in 30 days: day 1:”http://coliveira.net/2009/05/day-1-read-other-peoples-code/ – i’ll follow for the first few days, see how it goes.
- Customizable iconset – nice, simple, lazy. i <3
Startup thoughts: Choosing the right startup partners
Three days ago (19/5/2009) me and my co-founder of SocialNinjaz Lior Levin released the first project we’ve been working on together, Status Search.
It took us almost 3 months and lots of blood, sweat and tears (each in his turf, i’ll get to that later) but we made it through and release what i would like to consider as the “fun”est project i ever did, most of that is due to the fantastic co-operation i have with Lior.
In all of my entrepreneurship years (almost 10) i came across with many kinds of people in the industry, some were an insperation and some are not even worth the mention, people from all across the rainbow. It’s no secret that the success of a project/startup lays in it’s leaders, and if the people who push the blood through the vains of the startup, motivate others when it’s hard to keep up and supposed to pose an example to others and doing what they need to do, and know how to tell right from wrong in their responsibility scope are doing it good, the project is most likely a WIN. On the other side, Many projects i was a part of failed on that basis too, people who refused to understand that everything is a business, and that there are people out there that will do anything to take advantage of young and naive startup founders and take them down/over.
Working with Lior was not only fun, it was productive, almost perfect. I don’t even remember that exact circumctances that brought us working together but i think it was the right call on behalf of both of us, our combined efforts on StatusSearch.net is what brought this think to life in both technology and business/marketing side.
Like many things in life, starting a business is a lot harder to do by yourself. In fact, not only is it harder, i think it’s stupid. Nobody knows all there is to know about every aspect of a startup raising process, product management and guerilla marketing, That’s why we have co-founders! Choosing the right co-founder is some kind of an art, if you get it right on the first time, it’s a freakin miracle, you have to consider carefully what is right and wrong and what will that possible partner has to give you and how it comes one with your future prospects.
co-founders and numbers
Having co-founders means giving up a share of the ownership pie, let’s make that clear. I don’t know even one person that will be willing to put in a “founder” effort based on a payroll fee. With that in mind, your aim should be to find co-founders that bring enough to the project to cover the loss in ownership. In essence you are looking for people who through their contribution will make the overall pie larger and therefore more profitable, so that a lesser share of this bigger pie is actually worth more than the whole of the original. Personally, I think that keeping 100% of 0$ is stupid, but also giving 99% of your work for 1 hour of contribution a week.
Multitasking
Starting a business is a very difficult experience, you can forget about normal life at the beginning (sometimes long after that). I’ve known many people who began starting a business and then simply never finished because there were distractions. Having co-founders means that even if you get temporarily distracted, there are other people who have a vested interest in keeping things going and getting you back on track, or might even complete the task for you as doing their tasks as well.
Better 2 than 1
Having a team means you can throw ideas around, discuss the merits of pursuing certain options and share in collective wisdom.
Workload and experience
There is a lot to do, not all that you know how to do. Imagine things like register trademarks, open bank accounts, find an accountant, hire a lawyer, choose web hosting, write a business plan and all the other nitty gritty of getting things started. again, having Co-founders means you don’t have to do everything all by yourself! Having co-founders means you can share the experience, both the highs and the lows.
Investment Load
Every new business needs some monetary investment. At the absolute least you’ll need to pay for accounting and legal advice. More likely you’ll need to pay contractors or employees, buy equipment, software, domains, hosting and a million other things. Who’s going to pay for all that? Well that’s up to you to figure out, but certainly co-founders are an opportunity to spread the investment load of starting your new business.
Connections
Knowing people is a big WIN in business. a newspaper article about your project, a website review, all of those are things that can be earned by hard work and hope, and via connections. :)
Black and white
Over the last few years I’ve been approached on numerous occasions to partner in new business ventures. Some of these propositions have actually been quite attractive but thanks to excellent nose, i smell trouble pretty good these days. The least attractive offers for me, are the ones that come from people with lots of ideas.
That’s what * i * do, I have way more ideas than I could ever code.
So partnering with a person who is full of ideas but not necessarily much in the way of execution makes no sense. They don’t bring me anything new and we’ll probably spend most of our time talking about ideas than bringing them to life.
What I require from co-founders are people who think and act differently to the way I do. People who have strengths where I have weaknesses and weaknesses where I’m strong. And I think this is something everyone should look for in a co-founder:
Minus and Plus, the ultimate balance
I don’t like media, i don’t like seeing my name on some web site next to a quote i didn’t necessarily said, Lior loves it. That’s why Lior felt like a good choice, a brilliant entrepreneur with almost no tech baseline, a media worm with no fears :)
On the other hand, you must have some kind of common grounds, you can’t have your marketing guy running around spreading the word too fast and bringing on you the Digg/Twitter effect that will crush you under unique hits rains. you must have a common ground about the plan and the way to make things happen, which results from the most important part of any relationship, co-founding included, trust and respect.
Trust & Commit
Of course it isn’t just a balance of skills that makes for a good co-founder. There’s a reason I went into business with someone i didn’t really know up to that Facebook chat. That reason is that you need to trust who you work with. Getting into a serious business together is up there with getting married in terms of commitment, so you need to be sure about the people you choose. This is incredibly important because if you do well there is going to be money involved and if there’s one thing I think we can all agree on, it’s that money can cause a lot of weird behavior in people. If you work with people you trust then it means you’ll spend your time working on the business not working against each other.
It’s essential that you seal any co-founding deal in paper and ink with a lawyer making sure that everyone’s rights and shares are protected in black and white.
A Big Decision
Finding co-founders means making a lot of big decisions. Go with your instincts about people, take the time to ask them what they are after and ask yourself if you complement each other in skills and personality. And remember you’re going to be stuck with these people for a long time to come, so choose nice people that make you happy!
Bag O' Links - 22/5/2009
- Ajax based Facebook/GTalk style chat – Nice JQuery based chat module.. better than the Facebook one i’ll bet.
- Receive email attachments with Rails – useful if you want to handle user data import via mail (posting blog entries for example) or something..
- Universal Internet Explorer 6 CSS – better idea, DUMP THAT FUCKER!.
Bag O' Links - 20/5/2009
- Create a tweet counter with JQuery – i know some people that the bars will exceed screen size.. yes @liors, i am looking at you.
- Another Rack lover – i still remain unconvinced.
- Color pickers and scheme generators
- New features for AWS – it’s getting sexier by the minute, just like Yvoone Strahotski.
- ActionMailer encoding issues – quick solution to a common problem, i usually send only plain text emails in english so it doesn’t really bother me.
- Awesome Rails generators collection – JQuery, CSS frameworks… nice.
- VIM ruby debugger – for all of you sinners.
- Rails testing FAQ – all you didn’t know… and was very VERY afraid to ask.
- include VS. extend – 3..2..1.. fight!
Bag O' Links - 14/5/2009
- Everything you’ll need in order to write CSS – Everything and more.
- PDF:Writer ready for Ruby 1.9 – neat.
- Queuing with RabbitMQ amd AMQP – AWESOME.
- Computers suck at math -yeah, i could never trust something that thinks faster than me. :)
bag O' Links - 13/5/2009
- Support Keyboard shortcuts – Don’t forget those power users!
- :before_save gotcha – i actually hit that part a while ago, Don’t return false or nil.
- What is SaaS – A comprehensive explanation about SaaS.
- Ruby performance roundup – run ruby, run!.
- Google <3 microformats – finally, microformats are recognized officially by Google and would be indexed.
- Rails plugin: Check if user agent is a browser or a bot – cute.
- Edge Rails: database seeding – no more data around migrations.
- Cheat codes to your website – awesomeness.
Bag O' Links - 12/5/2009
- 10 things you as a developer should know today – new rules.
- admin_data plugin – this plugin allows you to not only browse the records but also do quick and advance search on all of your tables.
- Infinite page plugin for rails – unobtrusive and
will_paginatereliant, neat. - a JQuery datagrid rails plugin – cool.
- has_remote plugin – onnect your local model to a remote resource using ActiveResource, to make it look for certain attributes remotely. Caching and syncing is built in. scares me a little bit.
- Remote require gem – Require a ruby file/gem from a remote location (url).
- Rack:Debug – a rack middleware for step debugging.
- Free Programming books – there’s even a ruby section, although i am not sure that it’s not a violation of rights, if someone knows better, please let me know and i’ll remove this link.
- IRB commands – TOTALLY AWESOME.
- Rails 3 screencasts and books – something tells me that the first book will be on hold for a while.
- Tiny Photoshop replacements you can keep on your USB – well OK… not photoshop but it’s still a list of handy image editors.
- Mozilla Prism – Use webapps as desktop applications.
- The entrepreneur essentials list – absolutely IMPORTANT, awesome list.
Bag O' Links - 10/5/2009
- Speeding up rails – A change one line magic.. would love to see if it actually works+safe.
- A CSS basics tutorial – A weekly ongoing CSS tutorial, i like the way they explain things.
- Why stored procedures are smart – i agree with that…
- Rails Or Fails – The geeks hot or not.
RailsBridge.com: volunteers required
As you all well know, i am a proud member of new rails community named RailsBridge.
I signed myself up to be responsible of this community main website which basically means i need to
- develop it.
- design it.
- maintain it.
I gathered up some help around the IRC channel (#railsbridge) and the Google Group and it’s going to be fun. :)
But, as fun as it may sound, we do need to get some help doing so from other members of the rails community, So if you feel like helping out in forming a new, cool, fun and professional community, just let me know on the comments, one Twitter the “Google Group or on the IRC channel.