Radical perspectives on school and learning

I just finished reading Will Richardson’s Why School? and Kio Stark’s Don’t Go Back to School. Richardson’s is a short text that challenges us to think differently about what K-12 schools need to become in the information age. Stark’s book is a guide to learning without schools, and features interviews with more than 20 individuals who have succeeded in a vareity of fields, from journalism to the arts and technology, without formal education.

As I read, I vacillated between exuberance about what’s possible in education, and total dismay about the current state of affairs. I’ve been excited to read Don’t Go Back to School since supporting its Kickstarter campaign last year.  What attracted me to Stark’s work is the interviews.  While I see the validity in arguments against higher education, I still tend to view college as a good practical choice. Yes, you may not learn much but in these times of credentials inflation, college still seems like the best guarantee of a middle class life. Stark gives fantastic portraits of what’s possible.  Everyone she interviews has a clear love of learning – a few even liked school – but traditional education didn’t work for most of them.  The common thread was that school was overly prescriptive and rigid, and did not allow them to discover and pursue their passions. By going outside of the traditional system, they were able to build successful and unique careers. 

Stark’s book is primarily focused on the value of higher education, and most people she interviewed completed high school. But most of them also turned away from higher ed because of their dismal experiences in K-12.  So Why School?

I admire the people Stark interviews in Don’t Go Back to School. But I can’t help but feel that they will continue to be exception. What will it take to make independent learning paths accessible? Badges, portfolios, and the like will help. But I believe what we really need is a shift further downstream in education. To develop the types of people who can successfully do what Stark’s interviewees have done – pursue their passion, take their learning under their own hands – we need to take Richardson’s advice and seriously reconsider K-12 education.  

As Richardson notes, “schools as places where children come together to learn will not be going away anytime soon.” Nor would most people want them to.  But when I think about the forces shaping K-12 education today – common curriculum, standardized testing, rigid accountability – I can’t help but feel that real education reform will have to start from outside the system. 

How to become your own mythical tech co-founder

I’ve wanted to build an edtech company for years, and have always thought a lack of technical skills was the primary barrier. I knew basic web design, but I was searching for the mythical technical co-founder. Especially after a year in San Francisco, I realized that everyone else was too.  Last June, I decided to stop looking and start learning. I was inspired by many blog posts, especially Yipit cofounder Vinicus Vicanti’s seriesLess than a year later, I’ve built and deployed a Rails App (CourseSky) and was part of a dev team whose app won StartupWeekendEDU.  

As the writings of other did for me, I hope this can be useful for someone contemplating teaching herself programming.

Step 0: Decide what to learn

Before I started, I had a solid understanding of HTML/CSS, and web hosting from working with WordPress. But I had to choose a backend programming language (see this explanation  of frontend vs. backend).  You could easily spend weeks reading Ruby vs. Python vs. PHP arguments. If you know a programmer who is willing to help you, then choose a language he or she knows. When I started learning, my brother was in the middle of the Code Academy (now Starter League) Rails course. So I went with Ruby and Rails.

Step 1: Learn a little Ruby

Sources: Try Ruby (free, browser based interactive course), Learn Ruby the Hard Way (free online book)

A lot of people will tell you that you don’t need to know Ruby to learn Rails. They’re only partially right.  Learning Ruby first made it much easier for me to grok the Rails Tutorial. Note that you do not need to become a Ruby expert before diving into Rails. You could probably get a solid understanding of Ruby in 10-20 hours. I strongly recommend Learn Ruby the Hard Way. It’s very in-depth, and even takes you through deploying an app. Write out ALL the code as he advises.

Step 2: Learn Rails

Sources: Rails Tutorial (free online)Agile Web Development with Rails

If you are only going to use one of the resources above, it should be the Rails Tutorial. It is a challenging read the first time around, but persist. One approach that helped me was to go through each chapter once, following along with the tutorial and writing out ALL the code. I then read the chapter again a few hours later or the next day, taking notes on things that were still confusing.  Once I got about 4 chapters into the Rails Tutorial, I started the Agile Web Development book. Going through two tutorials simultaneously allowed me to see alternate explanations for concepts. Both sources covered the basics, but each also covered different material (e.g., testing in Rails Tutorial, internationalization in Agile).

I emphasize writing out ALL the code in tutorials because the temptation to copy/paste will be high. If you can’t resist, get a pdf and print out the tutorial. 

[note that Steps 3-5 are all concurrent]

Step 3: Start Building

Sources: StackOverflow, Railscast, Google, developer friends

Woo hoo! You got through the tutorials, now it’s time to get working on your own stuff.

This step was pretty scary for me. I had to take off my tutorials training wheels (which I really liked) and start writing my own code. When you start this, you’ll probably need to have tutorials and other sources open for reference (it helps if you have a 2nd monitor).  Build something you want to see exist. You may have an idea of a complex app but break it down into one small part. Start with just one model and start building. This step never ends.

Step 4: Learn other stuff…

Sources: too long to include; start with Google

As you start building your app, you’ll realize that developers have to be specialists and generalists.  You are specializing in Ruby and Rails, but deploying an app will require general knowledge of other areas. You’ll need to know a little about front-end technologies (HTML/CSS, Javascript, JQuery), hosting (Heroku, S3, Rackspace), databases (SQL, PostgreSQL), etc.

The nice thing is that you can learn these as they come up. I learned SQL when my crazy Ruby queries became slow and difficult to read. I learned more about Heroku, and importing/exporting data when it came time for my project to go live.  

Step 5: Find a community

Sources: Meetup.com (e.g., Hacker Hours, Ladies Who Code in nyc)

Learning is better with friends!  When I first started, I spent a few months at my parent’s house in FL. It was a solitary experience that was made much better by chats with my brother who was also learning Rails. When I got back to NYC, I started attending meetups where I met people, learned, and taught others.  I got to know the organizer of Hacker Hours, the awesometastic Aidan Feldman, who has been a great tutor and helper.  Besides meetups, I’d also recommend StartupWeekend or other hackathons. Go ahead and go – you can/will contribute!

Other thoughts…

If you can spare the time and money, it may also be worth considering Dev Bootcamp, Flatiron School, Starter League, or any of the other 10-12 week intensive programs that are popping up. I don’t have personal experience, but I’ve heard good things about the three I listed above.  Flatiron School has compiled a nice list of its prework, which can serve as another source for independent learners.

My last piece of advice is to be consistent. You’ll learn faster and get further if you can devote regular time to programming, rather than code once in a while.

Good Luck & Happy Building!

We need a better way to talk about startup ideas

I’ve been working with digitalundivided to launch meetups that will build a pipeline of black women tech entrepreneurs  Over lunch last week in Detroit, we had an interesting conversation about startup ideas. Specifically, how to encourage people to share their ideas, and help them understand that initial startup ideas are not what’s most important? 

Those of us who follow the startup/tech scene are used to hearing that ideas don’t matter that much. Paul Graham has written two incredible essays on  Ideas for Startups and How to Get Startup Ideas. The key takeaway is not to focus on the idea, but instead on the problem you want to solve. One of the more popular posts in the “startupsphere” last week was “Why Your Idea Sucks, but Your Inspiration is Inspiring:”

I really don’t give a damn about your startup idea. Less than damn in fact. Listen, no one is going to steal your idea and if they do, they are probably going to screw it up anyways – in fact, you’ll probably wind up screwing up the idea yourself…
Ask yourself why you personally care about this idea – and if you have an answer that motivates, challenges and inspires you, then you might just have found your inspiration (and the idea will come).

I agree with the sentiment, but the approach is still problematic. For people who are “in tech”, ditching an idea and pivoting is no big deal. But for communities like the one we’re targeting in Detroit, where people already feel as if they are outsiders, telling someone that “your idea sucks!” is not effective. Many people feel as if their ideas are all they have. They don’t necessarily have the tech know-how, the connections, the money. Their ideas represent dreams, and tey hold on to their dreams tightly.  

There has to be a way to talk about ideas without dismissing them completely. Even if most ideas are terrible, they are a starting point to solving a problem. We should be able to support would-be entrepreneurs, and help them accept that ideas will inevitably change/evolve without labeling them “sucky” or “worthless.”

I may not qualified to be an entrepreneur, and that’s ok.

What makes someone qualified to run a business? I’ve spent a lot of time thinking about this lately, especially as I’ve faced some bumps in getting CourseSky off the ground.  When I left my fulltime job last year with the intention of learning to code and building an education company, many people told me it would be hard. But it’s not really possible to tell someone how it will be hard (and as I’m learning, there are many many ways). In the process, I’ve started to doubt my qualifications. What makes me think I can actually do this? Maybe I should have spent more years working….

In the past few weeks, I’ve had conversations with people in different stages of launching a company I’ve started to notice that many of the people who doubt their qualifications happen to be women and/or black. The entrepreneurs who fit the “startup stereotype” do not. Clearly, my observations do not make a research study. And it might very well be that those who fit the “startup stereotype” have just as much self-doubt but are less apt to talk about it.

In any case, I’ve found that doubting one’s qualifications seems to come up more with my female friends and/or black friends. There is this sense that we have to know so much, or have accomplished so much before we’re qualified to launch companies. I contrast these opinions with a lot of who I see and read about starting companies. Of course, many of these men are smart, driven, etc. But by virtue of their age alone, they can only have so much experience. 

So I fully admit that I worry about my qualifications. I haven’t worked for 20 years, I don’t have an MBA, and I’m far from an education expert. But I’m scrappy and I’m willing to learn, and have learned a lot. At the very least, I feel qualified to be having this experience of getting something off the ground. Even if it all blows up in my face, I’ll hopefully learn enough to be qualified to talk about failure and what not to do.