StackOverflow vs. Online Pairing

Posted on May 15, 2014 by JF

StackOverflow is an incredibly useful resource for programmers. Posted problems instantly reach a wide audience of fellow programmers who are willing to help. But, there are simply times when SO won't cut it:

You need immediate help: Searching through a mountain of previous questions, thinking you've found the right answer when you haven't, and performing enough due diligence that you feel comfortable posting a new question on SO is a time consuming process. This time could be spent working on new features and refactoring.

No relevant answers: SO has an excellent search algorithm, but can lead you to answers that are not relevant to you. Similar error messages can appear for a million different reasons, and often you need specific advice tailored to your unique environment and codebase.

In these situations, quickly connecting with an Expert can allow a programmer to quickly get past their technical challenge and maybe learn something new. In the end, its another tool in a programmer's belt.

Leave a comment

Tech Startup Growth Looks a Lot Like Online Poker's Rise (and fall?)

Posted on October 24, 2013 by Lev

I started college in 2003 during what felt like the heyday of online poker and watched it change over the next 5 years. It feels a lot like what's happening in the tech startup world.

Everybody's doing it

All of a sudden when college started it felt like everyone was playing cards. We played amongst ourselves a couple nights a week, would learn from each other and mostly break even for smaller stakes. Then we'd go online and mint money. That's where the fish were, eagerly going all in against my pocket aces.

The startup world feels similar in some ways. More people than you ever thought possible are working on a startup, either full-time or on the side. There's no concept of a "fish" in the startup world, but it's certainly not for everyone in the long run.

Just like poker, it seems like a more acceptable path to follow these days, except of course when telling your parents.

Poster Children

Poker had Chris Moneymaker and Phil Ivey. Startups have Zuck and Dorsey (obviously among others). They're idolized and media-ized. TV shows, movies, it's everywhere. Both industries accelerated due to tremendous media hype.

There are smaller guys too that are doing well. The guy down the hall that makes $10k a week playing nosebleed games. The girl in your co-working space who just raised $2MM from the big VCs. Those examples make it feel so close and doable.

Resources

Unless you're foolish enough to think you actually know everything when you're just starting out, you have to learn. Poker has oodles of books. So do startups, plus we now have more blogs than we can count.

Poker had an awesome forum in 2plus2 where players would share notes, hands, strategy, and participate in high quality discussion. Tech startups have Hacker News, which aims for similar quality and participation.

Barriers to Entry

Barriers were beaten down orders of magnitude. It's easier than ever to learn to code, build a prototype, and test your market. With online poker, all you needed was a credit card and a computer. No driving to a casino. No being underage. All of a sudden it's so much more accessible and everybody is trying.

Looks easy on the Surface

Each discipline is one of those things that seem so easy on the surface, in retrospect, from afar. You don't see the emotional highs and lows, the pivots, the repeated "No"s, the thousands of hands. The guys on top got there with a TON of hard work, nuance, and of course a little bit of luck.

But from afar, most people with a little bit of confidence feel like they can do it. Especially when the poster-children look so damn ordinary.

The Easy Money Goes Away

In the early days of poker, fish were giving away money. VCs and angels used to hand money to anyone with a MacBook Air or an idea for a social network.

Eventually, the fish lost their money and didn't come back. The players who stayed kept getting better. It got harder to make easy money online without putting in the time and effort.

All of a sudden, VCs and angels want to see serious traction, a business model, a quality team, and there are 10-100x the startups looking to raise, making the game all the more difficult.

The Game of It

Part of what draws people to each discipline is the challenge. How do I figure out this game of convincing people to try my product and then to buy it, to go all-in when I have the nuts, find the right marketing channel, find a lucrative game?

It's psychology, decision-making with imperfect information, all under a severely skewed sense of what the competition is doing. In startups, we react to the competition far more than we should, assume they're doing great when most likely they're clawing their co-founder's eyes out. In poker, there's the big stack that actually bought in 6 times already, and the under the radar kid who's taking copious notes on the rest of the table.

There are plenty of articles written about the similarities between entrepreneurship and playing poker. I think they're mostly on point, but I'll stick to the overarching trends of how and why so many people started doing each one.

=================================================

They're certainly not quite the same though

=================================================

Startups aren't Zero Sum

Your success in poker is usually measured against the success of other players at your table. It's a zero sum game. What you lose is someone else's gain, and vice-versa.

Startups on the other hand are not exactly competitive. Sure, VCs only have so much money, but you're not really competing against them. Your company rarely gains when a competitor fails. The more successful startups there are, the better the world will be in all likelihood.

Startups are a Team Sport

While poker is mostly an individual game, startups are all about the team.

It's really hard to build anything meaningful with one or two guys. Magical things start happening when every person you bring in is better than the last. That concept is very much missing from cards.

Parting Words

That is most certainly an incomplete list of both similarities and differences. What do you think? Feel free to comment here or discuss on Hacker News.

Leave a comment

Learning Web Development Is Hard, But We Can Make It Better

Posted on September 24, 2013 by Lev

When you're just starting out, there are several reasons that learning to build a website or an app is difficult:

  1. There are lots of decisions to make before you even start learning - languages, frameworks, tools, tutorials - and no right answer for which you should use.
  2. Once you start, there are several very different things to learn - HTML, CSS, JavaScript, whatever language and framework you choose, terminal commands, text editor shortcuts, browser tricks. You basically have to learn ALL of these things at once. It's a lot.
  3. What should you learn next after you've kind of figured one thing out? Without a mentor it's difficult to navigate the changing technology landscape.

Some Useful Resources

There are tons of great tools available on the web, many of which are free. Some of these are highlighted to the right of the blog here.

Our friend Erik at The Odin Project is taking on the challenging task of organizing all of the available resources to create a curriculum for learning web development with the Ruby language, starting from the very bottom.

He acknowledges that it's quite difficult, presenting it as a ~1,000-hour undertaking.

How To Make It Even Better

He's also addressing the challenge of learning in isolation by allowing students in his curriculum to schedule pairing sessions with fellow students.

If you're thinking about learning web development or are already in the process, take a look at our resources on the right as well as The Odin Project.

Learning on the web is changing tremendously. By curating awesome resources and facilitating interaction with peers and experts, we can greatly improve the learning process. And not just for web development, but for all kinds of things.

Leave a comment

We Aim To Help Developers Learn via Personalized Real-Time Help

Posted on September 24, 2013 by Lev

Developers on the whole are an extremely self-reliant bunch. We learn from tutorials, use loosely documented libraries, google for answers, and inevitably write our own libraries all the time.

There's nothing quite as powerful as building up the skills to do these things and being able to solve problems on your own.

It takes quite a while to get to that point though. And even when you're extremely self-reliant it helps to have someone explain a new concept or framework to you, to describe relevant examples, and show pros and cons.

The Pro

We've talked to quite a number of developers in the process of building this and even some of the most experienced have a use case for talking to an expert, albeit a very different one than a beginner would have. An experienced developer may not need help building their first Django app, but what about designing an architecture to handle extreme load?

You don't want to make that up as you go along, especially when someone has done it and already learned from their mistakes. What technologies to use, what to cache, how to persist data efficiently.

All of the good programmers we know are continually learning and reinventing themselves. They're not beginners, but there's a period of time when they start on a new language or an unfamiliar framework when it really helps to get some quality advice and direction.

The Beginner

This is doubly true for true beginners just going through their first tutorial, doing a bootcamp or taking a MOOC. Going from a tutorial to building your own custom application is a huge leap. What's the difference between HTML and CSS? Why is my app crashing? What should I learn next to build a production web application?

As self-taught developers, we know it's challenging learning this stuff, especially if you're learning in your spare time in your apartment and the next n00b meetup is a full week away. You want instant access to help and advice so you don't spin your wheels when Google and Stackoverflow don't quite solve your issues.

How We Can Help

And that's where we come in.

We want to make it easy for developers of all levels to connect to someone a bit further along the curve. It saves time and frustration to have a real-time human interaction, to be able to ask questions and get immediate answers, to have someone anticipate what your next move, and to build understanding with others.

By building a community of experts of all levels, everyone should feel comfortable asking questions and getting advice when they need it. We're still working out a lot of the details, so bear with us.

We'll get there.

Leave a comment

Errr...Hello World!

Posted on September 24, 2013 by Lev

This is our inaugural blog post!

We've been working hard to put together the initial version of OnScreenExpert, and now that we're not just coding we figured it's time to share a little bit with the world.

Our goal for this blog is to chronicle a little bit what we're doing, how we're going about it, why, and with whom. Basically a company diary.

Writing out problems sometimes leads to understanding those problems better than you did before, sometimes even discovering solutions. Writing out your long-term goals helps solidify them for yourself as well as your team. Sharing what you've learned helps others that come after you.

So that's what this will be. Hope you enjoy it.

Leave a comment