Follow Slashdot stories on Twitter

 



Forgot your password?
typodupeerror
Check out the new SourceForge HTML5 internet speed test! No Flash necessary and runs on all devices. ×
Programming Crime Education

Rikers Inmates Learn How To Code Without Internet Access (fastcompany.com) 173

An anonymous reader sends the story of another prison where inmates are learning the basics of programming, despite having no access to the vast educational resources on the internet. Instructors from Columbia University have held a lengthy class at New York's Rikers Island prison to teach the basics of Python. Similar projects have been attempted in California and Oklahoma. The goal wasn’t to turn the students into professional-grade programmers in just a few classes, [Instructor Dennis] Tenen emphasizes, but to introduce them to the basics of programming and reasoning about algorithms and code. "It’s really to give people a taste, to get people excited about coding, in hopes that when they come out, they continue," says Tenen. ...Having an explicit goal—building the Twitter bot—helped the class focus its limited time quickly on learning to do concrete tasks, instead of getting bogged down in abstract discussions of syntax and algorithms.
This discussion has been archived. No new comments can be posted.

Rikers Inmates Learn How To Code Without Internet Access

Comments Filter:
  • Who is going to hire someone out of prison with a record as a programmer. It is tough to get hired as a gardener with a record.
    • Go back in for the free doctors that cover more then the ER, Medicaid and maybe soon even Medicare (more doctors as not taking that).

      Also no more of this out of network BS.

    • by Anonymous Coward

      Have to do freelance work, fully paid after completion. Maybe after building some contacts doing that they can get a steadier job. Maybe.

    • Who is going to hire someone out of prison with a record as a programmer.

      Seriously, use to be an ex-con knew his place, and you could count on them to shovel all the shit you threw at them and they'd keep their traps shut.

      But now they come out of Rikers with their heads full of nerd gibberish and they think they're fuckin' rock stars! You tell 'em you got a job for them and they demand free meals and a massage therapist! If you want a rub and tug, get it on your own damn time!

    • Re: (Score:2, Insightful)

      by Anonymous Coward

      You're more likely to get background checked as a gardener than a programmer at a startup or small business. Nobody expects a programmer to have a record, so they're not looking for it.

      If there's even a checkbox on the application, you just lie. Chances are good that they'll never check at a small place. And it's a safe bet that while you won't get hired if they do, and an even smaller chance that you'd get fired if they find out later, they won't bin your application if you lie.

    • I did (Score:3, Informative)

      by Anonymous Coward

      I did, he was a corporate VP by the time we got bought out. It costs more to screen them, but they tend to stay a lot longer than the entitled generation, are willing to learn new things, and are a lot more resourceful than our standard employee with a CS degree. My experience has been largely in the programming field, with most of the convictions drug related, and we've only had about a dozen. Hell, one who worked with me for 5 years went to one of the defense contractors and got a security clearance; I w

    • Whatever happened to the "debt to society: paid" notion?

      Can companies legally discriminate based on a served sentence?

    • by Anonymous Coward

      Companies that want lots of cheap programmers, and that have no liability for the security holes in their app.

      Which is to say, all of them.

    • Who is going to hire someone out of prison with a record as a programmer.

      Pro-tip: If you don't want a them to know you were in prison, then don't put it on your resume. Many companies don't do background checks, and often they don't do any fact checking at all. According to The Economist, a criminal record is not correlated with poor job performance [economist.com] for many jobs. You are better off filtering out people that use MSIE to complete their job application, or that write in all single case (either upper or lower). Those are both correlated with poor performance.

      It is tough to get hired as a gardener with a record.

      Gardeners have mor

    • If they have a couple impressive projects on GitHub (for the job they seek), they may get consideration from an open-minded employer. Maybe not Facebook or Microsoft, but a small business.
    • Who is going to hire someone out of prison with a record as a programmer. It is tough to get hired as a gardener with a record

      I have a good friend that makes quite a comfortable living as a senior dev, in spite of being a convicted felon. He got into a bar fight and put a guy into the hospital about 10 years ago, but he's actually quite pleasant to work with and writes solid code. He says it's never been a problem, as he's up-front about it and doesn't try to hide it, along with having a great work re
  • Huh? (Score:5, Insightful)

    by gstoddart ( 321705 ) on Monday November 30, 2015 @12:57PM (#51027423) Homepage

    learning the basics of programming, despite having no access to the vast educational resources on the internet

    Bah, when I learned programming there weren't "vast educational resources on the internet".

    It's been done.

    Since when the hell have we reached the point of "zomg, someone learned something without teh intertubes"??

    Because if other people haven't learned to basics of coding over the last few decades without the use of the internet, I'd be completely shocked. The internet is not a pre-requisite to learning, as much as people seem to think it is.

    • by Varka ( 767489 )
      The internet isn't a prerequisite for learning, it's a substitute for detailed knowledge and experience.
      • The Internet isn't required for learning, but it is required for Twitter. It seems a Twitter bot was a strange project choice when he knew going in that there was no Internet. In fact, he even printed out Tweets to show them what they looked like.

        How did they test their functionality? Did he have a fake API for them to hit against?

    • Re:Huh? (Score:4, Insightful)

      by ksheff ( 2406 ) on Monday November 30, 2015 @01:03PM (#51027469) Homepage
      It's as if the writer had no concept of the "dead tree" form of documentation: books. It may just blow his mind that some programmers used to write programs w/o computers.
      • by creimer ( 824291 )
        Or programmers printed their code on green-and-white bar paper from the dot matrix printer. Now those were the days.
      • It may just blow his mind that some programmers used to write programs w/o computers.

        ITYM "wrote programs w/o the Internet". Mind you, people *have* written programs without computers, but that's a lot rarer and has a harder time being useful.

        • by ksheff ( 2406 )
          A co-worker told me about a guy that used to work for IBM that lived in the woods somewhere in Pennsylvania. His project managers would mail him the requirements documents and he'd mail them boxes of punch cards with the complete programs. Other than the delay due to the USPS, I guess the workflow wasn't much different for the guys who came into the office every day.
    • by Megane ( 129182 )

      When I learned programming, there wasn't even an internet. Well okay, ARPANET did exist then, but that was nowhere near what the internet is now, and there certainly wasn't Google and Stack Exchange.

      It's always amusing when I can't get wireless, so I hack on something that's on my laptop, and people start asking me how they can get on the wireless too.

      • "It's always amusing when I can't get wireless, so I hack on something that's on my laptop, and people start asking me how they can get on the wireless too."

        I know. It is almost soul crushing to realize that most people think that a laptop is for using Facebook, but with a bigger screen than their phone has.

    • They didn't even HAVE the internet when I learned to program. The internet is not a requirement to learn. It is often the opposite, a crutch to use when you don't want to learn.
    • You forgot to say get off my lawn
    • I would go a step further and say more often than not the internet is a DETRIMENT to learning, especially in the programming realm, there is simply so much poor quality code using poor practices espoused on blogs as the way to do X, Y or Z that you would almost certainly be better with a structured education of programming (assuming the content they are getting is decent).
    • Since when the hell have we reached the point of "zomg, someone learned something without teh intertubes"??

      We reached that point a long time ago, bro. Where have you been?

  • by chthon ( 580889 ) on Monday November 30, 2015 @01:00PM (#51027437) Homepage Journal
    Hell, I learned a whole about computers without computer. I was 18 when I could afford one, a ZX Spectrum.
  • by Viol8 ( 599362 ) on Monday November 30, 2015 @01:01PM (#51027453) Homepage

    Say it ain't so!

    My god, there's crual and unusual punishment, but making they have to read from a book - where's Amnesty International when you need them??

    How does this idiot think everyone up until the 90s learnt to code?

  • by chinton ( 151403 ) <chinton001-slashdot@noSpaM.gmail.com> on Monday November 30, 2015 @01:08PM (#51027515) Journal
    Only the basics? I learned the BASICs, Pascals, Modulas, and Cs without the internet...
  • no more ciphers on toilet paper
  • by Anonymous Coward

    I learned to program when there was no internet you insensitive clod!

  • It's pretty cool that there are educational resources for prisoners. Keeping their minds occupied on doing something productive is good for rehabilitation, something the prison system is sorely lacking.

    However, and this is me being a cynical asshole, guaranteed there's no out-of-pocket payment for these classes, so one would think that it's just less painful to go to prison to get an education than go to college. (Yes, I know I'm vastly oversimplifying the long-term issues here, among them the cultural is

    • there's no out-of-pocket payment for these classes, so one would think that it's just less painful to go to prison to get an education than go to college.

      Riight. People pick Attica over Harvard because the tuition's better. And the chicks are cuter.

      • Like I said, cynical, and that I was ignoring a fair amount of nuance there. But so are you.

        A kid who has the resources and acceptance letter can go to Harvard. That kid's options are comfortable, pleasant, and are not borne out of desperation.

        A kid who is languishing in relative poverty, feels he has little choice but to turn to crime, ends up in prison, can say "hey, it's an education", especially since he, in relative poverty, wouldn't have had access to that education anyway (I've met kids who have st

  • by PvtVoid ( 1252388 ) on Monday November 30, 2015 @01:16PM (#51027611)

    Why have them write a Twitter bot if there's no internet access? There are thousands of interesting problems to solve with a computer code. Why that one?

    • #helpImTrappedInATweetFactory

    • by hsa ( 598343 )
      It is much easier to claim results if you don't need to validate the program functionality.

      "100% of our students created a Twitter bot."

      -> More research funding
      -> No idiot test subjects to screw this up, they can't prove they wrote non-functional code

  • Why Python? Why not Racket or Scheme? If they're cons, then they should have a language with some name appeal. But seriously, it's time to go functional. I've always considered Python as a stop-gap emergency replacement of Perl. Good. Now we need to find a more permanent solution.
    • " I've always considered Python as a stop-gap emergency replacement of Perl. "

      Despite your apparent misunderstanding of Heisenburg Uncertainty, how you perceive things actually doesn't make a god damn bit of difference. Python is a solid, well designed, efficient language. It isn't perfect, but most of its shortcomings would be true for any interpreted (With JIT/VM) dynamically typed language.

  • by barc0001 ( 173002 ) on Monday November 30, 2015 @01:24PM (#51027697)

    How is this newsworthy at all? I learned programming as a kid from a book in the last 70s, before even BBSs were a common thing. LOTS of people learn that way. Hell it's actually better in many ways as you don't get distracted and can focus.

  • by cwills ( 200262 ) on Monday November 30, 2015 @01:33PM (#51027795)

    Coding and programming are two different things (they are related, but they are different). Coding is learning the syntax of a language and the mechanics of implementing a solution to a problem. Programming is analyzing a problem and determining what computational steps are needed to arrive at a solution.

    In the mid 70's, my high school offered a FORTRAN programming class out of the math department. It was a full school year class that met daily. For the coding aspect of the class, we had one shot a week on the computer. On Friday we would hand in our punched cards and on Monday the teacher would return the cards and the compile/run printouts (the computer we used was the school district's main system). The time we spent actually coding was done outside the class room.

    The majority of the class however was learning how to program. Coding was a secondary aspect of the class (typically one day a week was going over specific FORTRAN concepts). Our first assignment was to break down the steps one used to make a phone call (step 1, walk over to the phone, step 2 pick up receiver, step 3 listen for a dial tone, step 4 if no dial done ...., etc.). We discussed and went over problem solving, algorithms, and how to break a problem down into it's discrete steps. Sometimes the problem was able to be solved without a computer (just analyzing the problem gave the final solution). Our coding assignments were usually stripped down problems that demonstrated that we could actually implement the solution (if I remember correctly, the biggest coding assignment was maybe 50 or so statements long).

    In the parent article, it sounds almost the same. They are being introduced on how to program.

    In today's environment, there are a lot of coding frameworks that have pre-canned solutions that address many typical programming requirements. So it's easy to approach solving a problem by learning the frameworks and connecting the pieces together. The real programming has already been done within the framework. This is both a blessing and a curse. The blessing is that a lot of people can code a solution to many real-life problems without needing to really understand the programming aspect. The curse is that the solution will more then likely be bloated, and computationally inefficient.

    The internet really helps with coding, it acts as a helpful reference for finding frameworks, the syntax of languages and little coding snippets.

  • by ErichTheRed ( 39327 ) on Monday November 30, 2015 @01:37PM (#51027827)

    I think it's a really good thing to try to help prisoners learn a skill. Anything that reduces recidivism is a good thing.

    However...have they thought of where these inmates would work when they came out? You can't get a job with the vast majority of companies if you have bad credit, let alone a criminal record. Everyone wonders why the recidivism rate is so high -- this is one of the reasons. If you can only get crappy off the books jobs, you're more likely to return to crime because it pays better.

    This is the major problem with the age of easy, cheap record checks. The second you're involved with the police at all, even if you're not convicted, your resume will immediately be tossed in favor of someone who doesn't have a record. Basically, sentencing someone to prison is permanently writing them off no matter for how long or for which crime. The inability to get meaningful work later on, combined with being housed with violent angry people for a long time doesn't make for a well adjusted person when they do get out.

  • An anonymous reader sends the story of another prison where inmates are learning the basics of programming, despite having no access to the vast educational resources on the internet.

    Wow, you don't say. Just like I did for the first 20 years of my life. Amazing.

    We had these things called "books"...

  • I'm not crazy! :D https://www.youtube.com/watch?... [youtube.com]

    Kinda jives with the institutional theme of this article...

    No? :(

  • by Anonymous Coward

    Teaching inmates to program is admirable, but has anyone considered the drawbacks to that plan? IT in the U.S. is getting squeezed from all angles. Teaching these individuals to code is fine, but the jobs may not be there after they are released. Now you have someone with skills to perform a job for which no-one wants them. Unless there are plans in place to get them jobs at the outset, their skills may languish or be turned to other endeavors from old behaviors.

  • Just wondering if anyone has a thought on whether this would encourage better programming? I've always taught myself by jumping in and just figuring stuff out. I've sat own and absorbed a lesson on how to program. Is there merit in this?

  • I taught myself programming before the Internet using those things we called "books", specifically, Jim Butterfield's machine language programming books for my Commodore 64.
  • Imagine having an army of programmers you barely have to pay? Prisons regularly exchange "resources" depending on what state projects the private prison operators have managed to win/undercut. Adding skilled programmers into the mix will give benefiting companies much better margins than outsourcing to China/India/Eastbloc.
  • They had to replace the "Hello world!" lesson with "Hello D block!"

  • Worried about getting bogged down? Got something better to do for the next five years? Shouldn't prisons just become full-fledged universities and be done with it? Isn't that the rehab hope?

  • How do you think they learned enough programming to CREATE the freaking Internet in the first place?
  • I see all of you privileged programmers talking about learning programming from a manual. I learned from reading source code. The kid down the street taught me how to control->reset and list BASIC programs on the Apple II, and I used those listings to figure out how to write my own programs. This was a really, really poor way to learn programming. So it's nice to see people having so many resources today. I don't think the prisoners should be allowed to use Python though, as they're supposed to be
    • Actually, I would argue that increased/sufficient punishment might be the one true legitimate use of Perl. Seriously.
  • There will be no compiling pages of copypasta one does not know the meaning of and after writing the program they'll actually remember how to write it rather than just remembering what to type into google to find the required stackoverflow answer with the snippets they're looking for.
  • It is now a thing for people to learn something without being able to google how to do it.
  • Hey, I learned to code without access to the Internet!
  • I knew Rikers had a bad reputation, but that just sound brutal.

    Seriously, couldn't they opt for hard labor or some alternative?

    This could be a really slippery slope. I can just imagine a power mad warden giving some poor bastard the Malbolge [wikipedia.org] spec for light reading while in solitary.

  • Pretty much anyone using a computer before 1990 experienced this phenomenon.

    • True story. Offline theoretic self-education can certainly work. Especially with kids. Limits create creativity.

      My anecdote:
      In fact, as a kid without a compiler or internet, that was how i learned programming QuickBASIC. By just studying an old reader that i found. I tried all my programming in "edit.com" but i couldn't run it. :) But i saved my programs, and later when someone told me about "qbasic.com" i was up and running ofcourse.
      Making more experimental programs for fun.

MAC user's dynamic debugging list evaluator? Never heard of that.

Working...