Getting into the tech scene when you have no skills
josephwalla.com
josephwalla.com
In the last 10 years Silicon Valley and startups in general have attracted a mush of people who bring little or no value to the table. I'm not talking about business/product types or MBAs that might at least have some experience and maybe some contacts and financial know-how. No, its the kind of people who for no other reason are thrilled by the celebrity-esque world of high-flying startups that might come with free lunch/dinner/beer, parties, and items found in The Social Network.
People should learn some product and marketing skills at larger, non-startup companies first before taking sweat equity or low/no pay at a startup. Also make contacts at meetups and learn the finance side of things. THEN you will have less of a problem "Getting into the tech scene", skills in hand.
For the same reasons anyone with no skills gets into anything. Some people glamorize things they don't know, others have a passion but were slow starters, other still know there is gold there, but don't have the experience to understand how to get it.
I think the best thing is to be able to weed out the ones who truly are passionate about technology and are willing to learn. I would take someone super enthusiastic with an aptitude for learning and no technical skills over most others any other day.
I would also point out that the author implicitly suggests no technical skill = no skills, though it could simply be sloppy writing.
The community definitely needs more blog entries telling non-technical people to learn how to code.
Further I fail to see how someone wanting into tech would be better reading a bunch of PG essays than actually, y'know, learning to code. Unless I'm not taking the title seriously enough, and the goal is only to get into the tech SCENE (as in social), not a technical job.
You should still learn to code though :-)
Required experience for paid work is a fact of life. If you don't have the skills to work for pay in a certain area you work for free. You can do that by putting in the time on your own side projects or you can accomplish it some other way. Like doing free work in exchange for experience.
Volunteering for a not-for-profit is a different matter of course.
Your enjoyment of the project will be higher, you have more control over scope and tech stack and you can choose to solve an interesting problem within your ability.
In short, think it as marketing material development for yourself, which will be way more effective at getting future work than some free work you can get.
http://www.youtube.com/watch?v=BhAt-7i36G8
While the talk was about a different industry, the lessons are still applicable to tech and pretty much most other fields.
Personally, I really disliked the "crash conferences" part.
1. Julia Allison - she tried to cheat her way into a fundraiser and despite that ended up on the cover of WiReD: http://gawker.com/284123/an-east-coast-hustler-tries-to-chea...
2. Nick Starr - my cousin who is a cop is still interested in talking to you for laptops that were stolen that you are selling.
3. Hermione Way - I honestly wanted to work for you as a coder because you had entrée into all these "cool" parties, but despite now having an app that gets 100,000 photo uploads a day (Via.Me) I'm still not cool enough to work for you? WTF?
There isn't a scene to get into. Instead there is a long standing list of problems that have existed since the beginning of computer science. Read Knuth or something similar if you don't know which these are. Either you are on board for solving those problems or your real interests lie elsewhere. Decide which you are.
I think non-technical people that do best stumble into the tech scene - rather than want to get in. By this I mean if you want to make it anywhere - especially in a world where you have none of the technical skills needed to actually build anything - you have to LOVE it. And that love comes from a deep and not-too-well-understood place within us. The kind of place which is not very easy to access with the cognitive part of your brain that lets you create the sentence 'I want to get into the tech scene now - but I know nothing - what steps can I take?'.
I am (sadly) non-technical (for now (but learning!)) - an Economics graduate who was on the path to investment-bankdem - but I couldn't help myself but be part of the tech scene. Some old colleagues from a hedge fund I interned at wanted to start a community for motorcyclists and, as I was young and more tech savie than them, they asked if I wanted to help out. It was (and still is) SO much fun thinking about how someone could use things - have an enjoyable experience, gain value, and try to find a way for us to extract a little value too. That is such a beautifully complex challenge to think through.
Our budget for the build was £25,000 - which is how much I thought it cost to build a website - so my plans for my own ideas had to go on hold - as I didn't have that kind of cash. Then a friend told me he got a website built in Romania for £2,000 - I can afford that!!! I designed my first website in microsoft word - from top to bottom - and sent my files over to Romania, greatly confusing the web agency who had never received 30 microsoft word files as the basis to build off. I was learning Spanish in Spain at the time and happened to meet an awesome German graphic designer. He took me through my designs and showed me why they sucked, and he told me about a program called InDesign. I came back to England and learnt that.
Since then I've won prizes for tech entrepreneurship, worked in a company that existed to build other tech companies, built a team of 6 around one of my core ideas, and learnt a little front end code myself. I would love to say - the rest is history - but now I am learning how to execute on ideas. Something which I have not yet done well enough.
But the point is I couldn't help any of this. And I think if you have to force yourself to read PG, or it is a 'I want a job', not a 'I want to build what's in my head!' mentality that makes you write your first piece of code - then maybe the tech world is not the place you really want to be.
You could start by looking and reviewing and spotting bugs in many programs out there, will help build a resume and also at the same time perk your interest into what tech scene angle you wish to start heading down. Be it codeing, design, testing, support, managing, selling, testing, providing. That is without even looking at the market area's within those feilds which could be anything from games, web, plant, automation, planes trains and automobiles, or washing machine spin cycle control systems. Many area's within area's. Tech is such a large feild and this is just the basic computing stuff. Designing new solar panels, specialist clothing, you see what I mean, such an open subject.
Two things I would advise keeping in mind. What are you good at and what do you like. It is a fine balance and to do the things you like you might not earn as much and work all hours bluring the lines between hobby and work. You could focus on what you are good at and treat it as work, have more time and money to focus on those hobbies and pet projects and get better quality time doing them how you enjoy them. It is extremly rare to fully combine the two, even then it will not be all the time. You can spend a long time chasing that end-goal and end up becoming disenjanted with what you enjoy. So a fine balance is advisable and by all means learn your own balance. Being mindful of that will help you be more objective and happier in the long run. Dreams can become nightmares, don't spoil the dream. So tread slowly, but firmly and you will know what you are good at and what your are not, so even if you descide to go another direction all together. You would of learned good foundations for any path forward.
So my suggestion in short - levridge your skill you have now and that is you are the perfect user, so testing/QA would be a great start and one you can define. You will then know which area of tech you wish to focus upon, though will gain the eye for detail early on which is handy in all walks of life.
That being said, why would you want to found a startup if not to build something cool and get people interested in it? If that's not your natural passion, it's no coincidence you don't already have skills a technical company would find valuable.
I had a couple friends who wanted to learn JavaScript and went to CodeAcademy's course[1] only to find it was more like Programming 101. Not a single mention of what is a closure, how you can modularize your code, how prototypes actually work, etc.
You simply can't cater for every ability level in a single course.
Modules and closures are needed in any serious JS development out there. Believe me. I worked in a codebase where they thought they "still need not know a single thing about those things" and boy was that a mess.
No wonder JS devs are considered crappy coders with that kind of mindset.
You misinterpret my personal skill level, I don't believe you as I've worked on more than one codebase of both kinds. Most javascript today is still employed as the scripting language it was originally introduced for. It does very little apart from open a lightbox or get something via ajax or something trivial like that.
There is a tiny % of javascript coders like us that use it to write programs and an even tinier percentage that use coffeescript. It is worth keeping that in mind at all times when discussing coding.
You don't have to be an architect in order to make a wall.
I also spent time running courses for non-coders in basic coding in a previous job to allow them to slightly customize their own product. Going in with advanced and abstract concepts like closures is a sure fire way to frustrate a student, not enlighten them.
What made you think that? My point is not that you suck as a developer.
Even when building tiny apps global variables are EVIL and they will eventually make you shoot yourself in the foot. Closures and modules are basic concepts in JavaScript because, well, the language is inherently flawed and you have to work around it.
> You don't have to be an architect in order to make a wall.
But you shouldn't bind bricks with gum either. If you do and the wall collapses, who's to blame? Would you teach bricklayers to bind with gum because using cement is hard for beginners?
This is not an architectural issue. This is about basic skills.
> Going in with advanced and abstract concepts like closures is a sure fire way to frustrate a student, not enlighten them.
I agree there, but my simile about the bricklayers and the gum stands. Sure, you'll frustrate beginners, but what about a last chapter about advanced techniques or at least mentioning it? Specially since closures are a core concept in JS.
Avoiding the issue will never turn beginners into advanced beginners/competent coders. Lack of information in key areas does more damage than excessive information because it creates a false sense of security that eventually leads to sore feet :)
I think some of these sites can do a much better job when it comes learning how to create projects, but I don't necessarily think that is what they were targeting originally.
Brilliant.
If you flunk the interview, try challenging the interviewer to a dance-off. If you win, the job is yours!