Learning BASIC Like It's 1983 - <AUTHOR> https://twobithistory.org/2018/09/02/learning-basic.html <comment><USER3> I'll share my own experience, since I started computer programming in 1982 (on a 6502 based computer called Oric-1), then worked in the game industry for 18 years.

What I remember from these early times:

1) we had only one television at home, so typing programs required to have access to the TV. This is why I spend a lot of time analyzing programs BEFORE typing them, since I didn't have a lot of time to type them. This probably taught me a lot !

2) I always wanted to improve the programs I typed, so I spent a lot of time optimizing them. This also proved useful later ;-)

3) Some programs included mysterious hexadecimal characters. I tried to find some documentation about that. It was difficult, because the information was scarce, and there was no Internet. One day, I got an Aha!, and I discovered 6502 that day. This was useful, since I did write quite a lot of games in 6502, and it got me my first job in the game industry in 1985.

4) In France, there was a beautiful newspaper called Hebdogiciel. It contained programs for all kinds of computers. I tried to convert these programs to my computer, and this also gave me pointers to handle conversion between Basics. My first job was about converting Basic programs between various computers (Thomson TO7 <> Exelvision).

5) everything was so new and exciting ! Nowadays, I don't feel this kind of excitement. Everything is so easy to put in place. At the time, we only had 48 to 64 kilobytes of memory. Everything was a challenge. The computers were not designed to write games, but games were doable.

<comment> ur-whale The lack of access to documentation was hard, very true, but then it also meant reverse-engineering was the only way to proceed, and from a certain angle, that was a good thing.

<comment><USER4> This! Still have fond memories of reverse-engineering the screen-buffer encoding on my Amstrad CPC 464 by poking values directly into the buffer and watching what happened on the display (i.e. my TV). Somehow got hold of the Z80 datasheet for opcodes - but working out the relative jumps with pen an paper was a slow process. Upgraded to Amiga around the time when I realized that assemblers had to be a thing...

<comment><USER5> Yes, I was coding in hand-coded hex machine language for a couple of years before I had access to an assembler. These days, when and IDE drops into assembly and all my 20-something colleagues duck for cover, I rub my hands together in glee...

</comment></comment></comment></comment><comment><USER6> I cannot agree more. I started when a computer did not have an OS, let alone 1.000 applications.

You got dropped right into the interpreter. There was not already a GB of OS loaded that you had a hard time to learn. All the code that was there was what you wrote (copied) yourself.

The processor & interpreter was about as fast as you could think, so it was easy to follow and step though (mentally). Reversing to assembly was the logical next step and since the programs where small, it was easy to learn & memorize.

After years of coding yourself, you'd stumble on the first OS, which consisted of the most rudimentary libraries that one could basically read & remember.

Years later still, the first rudimentary networking picked up. Slow and not business critical so again easy to experiment with. By the time I connected the first commercial network to "the internet" downtime of email for less than 24 hours was not even noticed.

I do not envy the kids who nowadays stand 0 change to ever learn the complete stack of code running on any modern device. From what I see, they all are "stuck" on top of a GUI with only the slightest idea of what happens between their mouse and the actual hardware (and even that is often not hardware anymore).

<comment><USER7> I haven't read it yet, but I think Nand2Tetris was meant to address this.

Petzold's CODE is also really good going from logic gates to microprocessors to assembly language.

I still wish you could buy something like a Pi board that has just an interpreter and compiler on it as well as a textbook and you implement a simple version of a file system, text utilities, task manager...etc.

<comment><USER8> I find myself asking the same things when it comes to the lower-level software side of things. I find this area fascinating as well, but it's all so "invisible" in modern systems.

I graduated from a CS program (BS) a few years ago, and the projects I'm still most proud of existed "lower" in the stack: implementing FAT16, writing compilers/interpreters (I still have my Brainfuck interpreter!), playing around with paging in MULTICS, and the like.

These were all very toy-like (with good reason, a semester is only so long), but since I enjoyed them I've found myself asking things like "I wonder how the process scheduler/virtual memory manager/in OS X is handling [whatever I'm doing at the moment]? What does my stack look like right now? How are all of these threads communicating with each other, what are they saying?"

You can occasionally see this in the console when something is going wrong, but usually not when the system is operating normally. When the OS is handling a heavy load brilliantly, that's kind of when I'm most impressed, and therefore most interested.

(maybe this kind of procedural output would be dreadfully boring or unreadable due to the complexity of a modern system if I actually saw it, I don't actually know of course.)

<comment><USER9> `perf top` on Linux, and doing a (really) deeeep dive on the perf and BPF APIs, may be of interest.

The possibly-incorrect impression I get of the performance-analysis related areas of the kernel is that they're a bit siloed (in the same way that X11 is siloed, and only a very small group of people look at it), which may render it bit functionally academic. (It's newer code, though, so there's less chance of eccentricity, FWIW.) Isolation does have benefits - with less chaos to keep up with and less bus factor, the code is changing less and the maintainers have more mental bandwidth to post on mailinglists :), so you have more opportunity to get a good understanding of what's going on.

I don't have the same low-level experience you do, but I do share the same interest in wanting to understand "what's really going on" \- and I incidentally want to make a Linux system monitor tool that vacuums up as much information that the kernel is willing to make available to it. `htop` and friends surface a very caricatured picture from maybe 1-10% of the data the kernel has to offer at any given moment.

</comment></comment></comment></comment><comment><USER10> > If you wanted to play one of those games, you had to type in the whole > program by hand. Inevitably, you would get something wrong, so you would > have to debug your program. By the time you got it working, you knew enough > about how the program functioned to start modifying it yourself.

As someone who was there and did that I want to refute that assumption :) I have typed in many programs and there's not a lot to learn because most of them consisted of many pages of DATA lines and a small loop that loaded those machine instructions into the home computer's memory and started the program by a USR directive (please note that I made this explanation many years after the fact). I guess there are not many teenagers who are able to debug this kind of program by looking at the actual opcodes.

Sure you could learn a lot from typing in regular BASIC programs but that weren't the most interesting games as far as I remember. The most productive learning experience was interactive and exploratory programming a shown in the OP article.

<comment><USER11> _As someone who was there and did that I want to refute that assumption :) I have typed in many programs and there 's not a lot to learn because most of them consisted of many pages of DATA lines and a small loop that loaded those machine instructions into the home computer's memory and started the program by a USR directive_

On the Beeb most listings were BASIC with all the logic there and DATA statements just for in-game assets such as sprites or room descriptions in a text adventure. All the Osbourne books are online now , check them out [https://www.raspberrypi-spy.co.uk/2016/02/usborne- releases-1...](https://www.raspberrypi-spy.co.uk/2016/02/usborne- releases-1980s-coding-books-as-free-pdfs/) many happy memories inside!

<comment><USER12> For more 80's microcomputer BASIC nostalgia, there's also INPUT magazine ([https://en.wikipedia.org/wiki/Input_(magazine)](https://en.wikipedia.org/wiki/Input_\(magazine\))). I spent hours and hours as a kid poring through those magazines. Archive.org has the entire series as PDFS - [https://archive.org/details/inputmagazine](https://archive.org/details/inputmagazine). They were really good at explaining core programming concepts and the illustrations were also amazing.

</comment></comment></comment><comment><USER13> > I think the people that first encountered computers when they were > relatively simple and constrained have a huge advantage over the rest of us

I pity sometimes the young people who are studying computer science nowadays. I studied CS in the 1990s. Compared to a modern curriculum, my courses looked very basic: five years on functional programming, compiler construction, networking, databases, etc. No P2P, cloud computing, mobile applications, IoT, etc.

Now, most CS studies have to rush through the basics in three years, followed by two years where the students have to learn all the tools and techniques that they need for their professional career. I had an entire course ("Advanced topics in databases") on the efficient implementation of indexing and query execution for databases. Today's students have to learn in the same time: a shortened version of the old course PLUS nosql, column-oriented DBMS, DHTs etc.

<comment><USER14> > Today's students have to learn in the same time: a shortened version of the > old course PLUS nosql, column-oriented DBMS, DHTs etc.

If your university is good. I took a computer science bachelor the past three years in the Netherlands. In my case, I fear that I learned as much about databases as your basic course taught you, and maybe even less. In particular, the implementation of databases wasn't even touched on. I definitely learned nothing whatsoever about nosql db's, column-oriented db's, dht's and other cool things, though the existence of the first two was hinted.

Luckily I can usually figure out what I want to know without help of a teacher, but there's a definite difference in level of difficulty and amount of content between universities today.

<comment><USER15> Doesn't Netherlands publish national classification of university quality, thus allowing a better selection where to apply for?

<comment><USER14> They do, and this university came out pretty high up, though probably not at the top. My reason for choosing it, though, was that they provided a maths-CS double bachelor programme. In my experience, their maths programme is of very high quality, so that makes up for it.

<comment><USER15> Sure, there are always multiple factors when choosing where to apply.

I was just curious, because not all countries do it.

</comment></comment></comment></comment></comment><comment><USER16> _It was just last week that you saw the Commodore 64 ad on TV. Now that M_ A _S_ H was over, you were in the market for something new to do on Monday nights. This Commodore 64 thing looked even better than the Apple II that Rudy's family had in their basement.*

Alternative version:

It's 1983 and your dad decides to buy a personal computer. The C64 is too expensive at $595, so he buys a VIC 20 (introduced at $295, probably $200 by '84).

You plug it in to the television downstairs and, after mentally tuning out the hum from the RF converter, you start to enjoy gems like GORF and Radar Rat Race ([https://m.youtube.com/watch?v=1LRkON9XTOk](https://m.youtube.com/watch?v=1LRkON9XTOk)).

You try to read the included user manual, with its helpful computer chip themed cartoon mascot explaining things like strings, but none of it makes sense because you're eight. You and your sister spend hours reading aloud and typing in bytecode listings from then-popular computer magazines. Imagine spending an hour transcribing hex codes, only to type the run command and have it crash.

If, on the off chance you found the errors and got the program to run, you'd find it was wildly over-hyped in the description. You didn't want to waste your work, so you'd save it to the tape drive that used audio cassette tapes.

A few days later, you'd try to load the program from the cassette tape and find that it was corrupted. I never once got a saved program to load from that thing, it only successfully read commercially published software.

The nostalgia is largely inaccurate. It was an era of immense frustration. And I never saw any C64 television ad, probably because we only had three television stations and no market to speak of for personal computers.

Incidentally, there's no way the kids in Stranger Things would have had those high end walkie talkies. They'd have had the crappy ones that only work to maybe 100 yards and emit static nonstop.

<comment><USER17> I had a VIC-20, was about 12 and took to it like a duck to water. The tape drive worked flawlessly, though it did take ten minutes to find and load a program.

One long-form magazine program I tried never worked right, even after finding and fixing some bugs myself. But we neighborhood kids had hours upon hours of laughs plugging our names and bad words into the sentence generator program's DATA lines.

</comment></comment><comment><USER18> The problem is not that it was easier in the 80s to start programming (that would be that same as to say it was easier to study medicine in the 1800s) but that today it is much harder to get to the point to do something _meaningful_.

If you want the simplicity of the Basic interpreter, just fire up a Python console, and you are in a much more comfortable position to learn programming and computer science than you were back then. But it is still a long way to get to someplace useful. In the 80s, by owning a VC-20 and programming Basic and Assembler, I was pretty much already at the edge of something new and powerful.

<comment><USER19> > "but that today it is much harder to get to the point to do something > meaningful."

in some ways that is true, in many ways that is false. only as far back as 2005~, if I didnt know linux and wanted to learn it, I needed to purchase hardware. installing and messing with binaries / configurations ran the risk of making a machine inoperable. now today, its very easy to spin up something in AWS or VM. want to experiment with tensorflow on a large GPU box? 4$/hour on demand.

also, we have lots of API's and libraries we can just import, and I think thats a great thing. writing a website where the login was needed but not ultimately what you wanted to explore use to be hard. now its gem install devise. makinga basic website look pretty enough? bootstrap. want to compare random forests, xgboost, and linear regression for predicting home prices? from sklearn import ...

i know all these things arent doing 'new' things, but they enable the person to not worry about the details and do something cool. I think the volume of interesting stuff we see coming from blogs and articles on hacker news is a testament to that.

<comment><USER20> I think the point is that in 1983, if you wrote a program that read in some input, did some calculations and printed output, you had created a program that resembled much of the professional software out there.

If you have kids do that know they would probably say "It's not a _real_ computer program, it's just text!"

</comment></comment></comment><comment><USER21> _I think the people that first encountered computers when they were relatively simple and constrained have a huge advantage over the rest of us_

I don't and I grew up in the era of 8 bit machines and kilobytes of RAM etc. I fully recognize that it was _fun_ to have those constraints and we learnt a lot about dealing with them (using less memory, using fewer instructions) but I don't buy that that really matters for most programmers today. They'll have other things to worry about: e.g. debugging distributed programs.

Sure, if you want to do microcontroller work then that sort of thing is useful, but literally nothing stops a "Full Stack" programmer picking up an Arduino and programming it and learning something new.

I love playing with those environments ([http://blog.jgc.org/2009/08/just- give-me-simple-cpu-and-few-...](http://blog.jgc.org/2009/08/just-give-me- simple-cpu-and-few-io.html)) but every day I see people with different experience of computing from me and I don't feel that I have an advantage over them: they often know about things I'm totally ignorant of. It's true that I'm very good at debugging horrible low level things, but it's also true that I'm not good at imagining the state of a system with hundreds of micro-services.

<comment> ur-whale >I'm not good at imagining the state of a system with hundreds of micro- services.

I feel you. Thinking across multiple levels of abstraction is one of the hardest thing in engineering, especially if, over the years, you've overspecialized on one specific strata.

</comment></comment><comment><USER22> I've been doing a lot of tech blogging lately, playing around with various F# tools and toy projects, seeing what resonates with the community.

There was a progressive complexity that happened back in the late 70s and early 80s such that people alive today who still code and learned back then have taken the ride from machine language to multi-gigabyte stacks.

We just kept adding stuff and having to make sure we could be functional in all of it. Not an expert, but functional. It was standard practice on my commercial programming teams to decide what everybody wanted to learn on a new project before starting. (And these were high-paying projects. We always left with happy customers).

People were jack-of-all-trades. Most everybody was. You had to be.

What am I seeing resonate, at least as far as I can tell? The inability to understand what the hell is going on and work with it. You get a C++ compiler compiling a hellacious codebase working in DOS, a rails configuration ain't nothing.

I see what are supposedly senior programmers walk a bit off the happy path on a framework and they're lost. Not only are they lost, they are insecure, afraid, embarrassed. There's nothing wrong with these people. There's something wrong with the way we're training and staffing them.

Fifteen years ago I was still coding commercially, having a blast. Talking to a recruiter one day about various projects, she said "You know, you're one of the last true general consultants"

There may be ten thousand of us. Beats me. But her general appraisal was correct. There is a drastic and complete change between the way coders used to relate to technology and the way they do today. It's not tech. It's mindset.

<comment> 52-6F-62 Just to your point about the recruiter's assessment— I've never met a modern tech recruiter who can make that kind of remark.

They largely focus on buzzwords and where you went to school. Seems like they even often fail the companies they work for by designing poor matches and wouldn't recognize experience like you've noted as being worth anything. Then again, maybe I'm just in a weird bubble here. And I'm just generalizing—they're not all the way I've described, but many (possibly most) are.

<comment><USER23> "Just to your point about the recruiter's assessment— I've never met a modern tech recruiter who can make that kind of remark."

How many years experience of "the XML" do you have?

<comment><USER24> "What versions of .Net were you using at each of these jobs?" "What percentage of time were you using SQL databases?" "On a scale of 1-10, how well do you know Java?" and my personal favorite...."Are you willing to do a contract role for less than your salary? We have many candidates go long term."

</comment></comment></comment></comment><comment><USER25> This is why the "STEPS Toward the Reinvention of Programming" (a.k.a. 20k Lines of Code) Project was important. It was spearheaded by computing luminary Alan Kay with help from some very impressive researchers.

The final report is available here: [http://www.vpri.org/pdf/tr2012001_steps.pdf](http://www.vpri.org/pdf/tr2012001_steps.pdf)

I haven't kept up with subsequent research the Institute has produced. I do know they had an aversion to producing software artifacts and were far more concerned with the written reports (which in some senses restricted the ability of amateurs like me to play with the interesting output by the group). I did play with OMeta (a meta-parser) and the COLA / Id code - which was enlightening!

</comment><comment><USER26> For all those willing to play around a bit, here's a low entry-level access to Commodore BASIC, a web-based PET 2001 emulator. You may write programs in your favorite text editor and load them per drag-and-drop, and even export any screen contents as text. (Also, all the special characters are accessible by a virtual keyboard.) Manuals are found in the programs/download section.

[https://www.masswerk.at/pet/](https://www.masswerk.at/pet/)

(Core emulation by Thomas Skibo, interface and IO enhancements by yours truly.)

<comment><USER27> Thanks for this... Took a minute or two to re-create my very first program:

10 PRINT " __ __ __* ";

20 GOTO 10

:)

</comment></comment><comment><USER28> You are right that it was a special and exciting feeling learning these things when these machines were brand new. When my friend's family bought a TRS-80 in 1978, it was like some kind of alien artifact that fell from space; we were utterly fascinated by it even though its capabilities were almost absurdly minimal. It had only 4k RAM and that required several minutes to load from the casette tape storage.

Nevertheless it ran BASIC and my friend and I learned to program on that machine. Subsequently we honed our skills on Apple II's at school, and later by hacking on the PDP-11 at school. In 1981 I built a simple Z-80 computer, roughly equivalent to the TRS-80 (note:"80"). At that time doing something like this literally caused newspaper reporters to come interview you. It was nice to learn these things sort of organically, albeit perhaps not optimally; I've made my living in software development and to this day have never taken any class in programming.

Of course that moment of novelty really was brief. Once the IBM PC came out in 1981, computers proliferated rapidly and they no longer seemed so special. Nevertheless I do think that our "Generation X" had sort of lucky timing with computer culture, since we were also just reaching working age when the Internet revolution hit (my first job out of grad school came from an ad which literally said "the Internet revolution is here and you can be part of it"...a small part to be sure but still part!)

But anyway every time period has its pluses and minuses! If you want to know how it really felt to grow up during that time, the truth is that we envied the 60's generation hugely and thought that everything we had was just kind of a pale imitation of what they did (for example, music). Take a look for example at the book called "Generation X", which is pretty dystopian, and really did express how many people felt. There's always something new happening!

</comment><comment><USER29> It was definitely fun to go to the computer lab in high school and play with/program the Commodore PETs. These were the 4K models with the chicklet keyboard.

I will say this though. I disagree with one word in the author's text. He said the machines of the time were "constrained." They weren't constrained at all. They had limitations just like today's machines do. But we weren't aware of the limitations because we weren't time travelers coming from the future with more computing power in our pockets than most corporations had in 1983.

In fact the exact opposite was true. The computer industry was bursting at the seams. It was exploding. It was not constrained at all.

Then they cloned the IBM PC and the rest is history. Every machine you're reading this post on descended from those.

</comment><comment><USER30> I would have been 6 around 1990 when I first discovered BASIC, on our Amstrad CPC464. Found the manual filled with code, and that cemented my love of programming.

It's interesting how rather than coming with an instruction manual nowadays, its assumed that everybody knows how a PC (including phones) works, especially as they are more complicated now - just hidden beneath a veneer of GUI

</comment><comment><USER31> You can have the full experience today using the Colour Maximite board: [https://www.youtube.com/watch?v=XQA8lowEKOo](https://www.youtube.com/watch?v=XQA8lowEKOo). The MMBasic environment it uses is surprisingly powerful and convenient - <USER2> even includes a full-screen text editor.

</comment><comment><USER32> Now, this sort of experience can be recreated with Arduino, micro:bit and other educational microcontrollers and nanocomputers. Raspberry Pi doesn't count: too complicated.

<comment><USER33> You _can_ recreate it with Raspberry Pi, though it's no longer the best platform for it. It can natively run RISC OS Open, which can be set up to drop you straight into a BBC BASIC prompt as in the old days. And there was plenty of software printed in paper listings form for 32-bit Acorn computers if you want the traditional experience. The issues of Acorn User magazine from 1988 onwards will give you plenty to be getting on with... [http://8bs.com/aumags.htm](http://8bs.com/aumags.htm)

<comment><USER34> The RISC OS people have one already set up to run BBC Basic standalone: [https://www.riscosopen.org/content/sales/risc-os- pico](https://www.riscosopen.org/content/sales/risc-os-pico)

</comment></comment></comment><comment><USER35> I can't decide how much I buy this argument. I was born in 1980, and started programming Logo and BASIC very young (around 5 and 7 years old respectively). Almost everything this post describes is familiar to me: typing in code from books, learning PEEK and POKE, etc. I just don't think much of that matters: whether you learn BASIC on a stupid terminal that can't do much else, or in a super simulated terminal in a web browser seems kind of irrelevant.

OTOH, the experience of learning C and having to actually write video and network drivers (or their barest elements) because there wasn't a web you could download a library from...yeah, that probably actually did make me a better programmer. Having had the experience of writing a little bit of actual assembler, even just the old "MOV AX 10; INT 13" (am I remembering that right?) does give me a sense of connecting with the machine more deeply than someone who grew up with the internet.

On the first hand again though...living through the late 90s and most of the 2000s was crap. The time of Java. And the worst kind of JavaScript. I pretty much stopped coding altogether until the web had matured as a platform a bit, by the early 2010s.

<comment><USER36> dude make a new account. this one is hellbanned.

</comment></comment><comment><USER37> I've recently been introducing my son to programming, and it was so much more difficult just to choose the best starting language.

When I started in the mid to late 80's as a child, we had a Commodore 128 and it was Basic or nothing. I also remember typing in those program listings, getting annoyed they didn't work, realising I'd transcribed something wrong, then when it was working making changes.

We then moved onto a 386 and I gravitated towards QBasic (and later TurboBasic because you could use the mouse and compile to an exe)

With my son, I ended up searching high and low, umming and ahhing, and in the end I found the spiritual successor to those computer magazines with program listings in a Python for Kids book that takes them step-by-step (a little like the Commodore manual did) introducing concepts and eventually getting you to build a game.

I think a lot of the wonder about computers that seems to have waned is because we're all older and not looking at it through the same lens, true, computers are far more ubiquitous now, but learning that you can tell it what to do and are only limited by your imagination is still incredibly powerful to a child.

</comment><comment><USER38> Not basic but fantasy consoles like pico-8 try to bring back that feeling. Pico-8 has a 32k limit and all graphics / sound / code are memory mapped so you can peek and poke if you want to old school hack. It boots directly into a Lua interpreter.

[https://www.lexaloffle.com/pico-8.php](https://www.lexaloffle.com/pico-8.php)

</comment><comment><USER39> The nature of programming has changed so much since then. Back then, you could get going by knowing a very limited set of building blocks (BASIC keywords, all described in a single manual). The challenge was to build something meaningful out of those building blocks. Programming could be hard, but never too complex. Problem solving at its purest. That's what got me hooked!

Today, the set of building blocks is unlimited. The challenge is to find the right building block for what you want to do, using the infinity of resources available to you (all the APIs, libraries, Google, GitHub, StackOverflow, blog posts). You're drowning in complexity, even if what you want to program is straightforward. And you are constantly mindful of writing idiomatic code, always wondering if there's a better way to do the same thing, which is normally a good thing but can be time-consuming and getting in the way of the fun part that is the problem solving.

<comment><USER40> "Back then" means programming as a kid, on a hobbyist's microcomputer, yes?

I'm a bit confused because you compare that experience to modern programming as a software developer. I think you are thinking of the difference across 40+ years, rather than the difference of kid vs. adult.

I mean, if you were programming on a Unix machine in 1983, or a VMS machine, or an IBM mainframe, you would have far more than a single manual.

<comment><USER39> You're right, I guess I'm comparing against both those axes at the same time, since I'm relating to my own experience as a kid 30 years ago vs as someone working in tech today. Indeed, that's not really a fair comparison.

The point I was trying to make was about the distinction between programming with a limited set of building blocks vs programming with a large and open- ended selection of libraries. They don't require the same skill set, and one seems more fun to me than the other.

<comment><USER40> It is easy to get started with Lego, and fun to use. Those who are really good can build some impressive objects. The limitations of the parts make it easy to find challenges to overcome.

Mechanical engineering is a lot harder, there are so many options to consider, new options come along all the time so you're always falling behind, and cost plays a much larger and - I think - more boring role in the process.

I think that is analogous to the point you are making with computers.

<comment><USER39> Exactly.

</comment></comment></comment></comment></comment><comment><USER41> I started on a Commodore PET 2001 in 1978, and wrote a horse racing game for my parents. Three horses, ASCII characters randomly going across the screen 0,1 or 2 spaces. Odds at the start and payoff calculated at the finish. My parents loved it! (OTB and racetrack fans). I then went on to a Vic-20 (1981), Amiga 1000 (1985) and eventually a 386 PC, a PowerMac PC (I got minix or other variant running on it), and then Linux, Mac, and PCs thereafter. The Basic Stamp in 1997 really brought back old coding to me with the addition of hardware tinkering. My fondest memories are the horse racing game, and plotting the 4 main moons of Jupiter on my Vic-20's thermal printer. Figuring out how to program those two programs started me on coding. Funny, I have always coded, but only as an employed coder for two years at one job. I program for myself, and when I can for work when needed (mainly technical computing).

</comment><comment><USER42> I recently found a copy of the commodore 64 programming manual in a garage sale. Of course, I had to buy it. Compared to the *nix paradigm with heaps and stacks, it's very, er, basic. The manual explains that you are just loading registers with instructions when you program. No Heap, No Stack, No memory management.

<comment><USER43> You're loading memory with instructions and data, registers with operands, and yes, there's definitely a stack that's used heavily.

</comment></comment><comment><USER44> BASIC was my first love. I was 10 when I got my first computer, a Tandy TRS80. It came with an instruction manual with example BASIC programs and I could save my programs with an external tape deck. Something awoke in me and from then on, I onew my calling. I still remember the first command instruction: SOUND 39,20

</comment><comment><USER45> There's this naive concept that these 8 bit microcomputers programming were based in BASIC. The speed of these Z80 chips was 1-3 MHz.

Almost all games and programs in the 8-bit world were written in Assembly. The BASIC interpreter was just used as the bootloader to load and run these programs, BASIC was in fact the shell interface and the toy language, but the assembly programs essentially sold the computers.

If you wanted to do something in these computers, it would have to involve assembly because of BASIC slowness. And there were newbie books about assembly language, assembly libraries, tons of assembly compilers and debugging utilities available anywhere.

<comment><USER46> > If you wanted to do something in these computers, it would have to involve > assembly because of BASIC slowness.

No, you could do all kinds of useful, productive things in BASIC, which were still orders of magnitude faster (and also still more accurate) than manual processes you were replacing.

</comment></comment><comment><USER47> Thinking about how to introduce my 6yr old to the world of programming I decided she is going to write her first code like I did - using BASIC on C64.

Luckily there are many JS C64 emulators online like this one [https://virtualconsoles.com/online- emulators/c64/](https://virtualconsoles.com/online-emulators/c64/) so its a breeze to get started.

And of course her first program was

      10 PRINT "HELLO PETRA"
      20 GOTO 10

exactly 33 years after her dad made his first.

She also tried Scratch and like it but to me in order to write code you need to learn to "write" it.

</comment><comment><USER48> I've been quite into retro- computing for a few years, and have started recently to amass a collection of my favourite machines from the 8-bit era .. and one thing I'm really intrigued about is the 'lost tech' of these machines.

I remember for one of these platforms, there wasn't really a great commercial release scene - but there was a great home-hacker scene, with type-ins from magazines and so on ... and I remember having quite a small library of routines and utilities, saved on cassette tape, that could do various things - fast scrolling, tape copying, UNDELETE commands, and so on. But now these things are lost to time (still out there on my cassette collection, wherever it is these days) .. and we have to re-create them.

So now one of my favourite aspects of the hobby is the reconstruction of all the 'cool utilities and stuff' that made the platform great in the 80's. Its not so easy! For some of the obscure platforms, we really have to dig deep .. fortunately though, 8-bit computer magazines seem to have been pretty well preserved on the Internet. Its just now a matter of going through them, spotting the gems for the obscure platform, and re-typing it all in, lol. ;)

But that said, having a variety of 8-bit machines at hand is really a special treat. I always wanted a Spectrum machine, and now its finally affordable. ;P

<comment><USER49> If you are looking for 80's listings, please check out [http://www.hebdogiciel.free.fr/](http://www.hebdogiciel.free.fr/)

The site contains all the listings from the Hebdogiciel magazine, re-typed and ready for download. The magazine was a must for all French-speaking computer kids back then.

<comment><USER48> Thanks for that - as an Oric-1/Atmos fan, I'm already aware of it, though. ;)

No doubt other readers of this thread will find it useful.

</comment></comment></comment><comment><USER50> Wow, what a throwback - this was me, but I had already cut my "basic" teeth on the Commodore VIC-20, quickly upgrading to the C-64 as soon as I could get someone to drive me to the nearest city to buy one with my meagre earnings. I'm still fumbling my way through "programming" today...

</comment><comment><USER51> Actually, the memory mapped approach of the C64 is an abstracted API. It's so immediate and intuitive, though, I can see why you might not think of it that way.

(I started on the Pet and later th C64, and had so internalized this approach that I was baffled when I first encountered systems where this wasn't the primary approach.)

I think there's actually a lesson here for API design today: the power of the "everything's-a" approach. Then it was everything's a memory location. But generally the everything's-a approach allows for a flat abstraction space with low cognitive overhead and high inherent/automatic composability, leading to short learning curves and high productivity.

</comment><comment><USER52> In 6th grade there were Apple II's at school I was part of a group of honors kids that got to code BASIC on Apple II's. I made a Tron disc game, it wasn't good but the ability to create a game, render block graphics using text and code BASIC was magic.

My friend also had a Commodore 64 which even to start a game you had to know some commands (LOAD "$", 8, LIST, then LOAD your game). Computing and coding/interfacing with the computer was more involved but simple as well, led to lots of fun learning to code and create.

Between these two machines (Apple II and Comodore 64) I fell in love with coding and games. I never had an Amiga which was a bummer but these were enough to inspire kids to be creators with code.

In high school my teacher Mr Isles was big into the internet and media computers, we were watching TV on a computer, playing games like Scorched Earth, making games in pascal while browsing the web, it was amazing and moving fast.

Flash had the same fun factor as those in late 90s to around 2006-ish before the mobile phone came out. Flash communities were very special in both designers and developers, it was powerful that either type of aim could create games, interactives, experiences and Amiga like demo scenes.

Even when mobile truly arrived in 2007 when the iPhone and smartphones upped the game, I was blown away when OpenGL was on it and I knew immediately that it was a new handheld gaming market that I had to get into. Mobile existed at that point and I was making games on Windows Mobile but everything changed with iPhone/Android in mobile in the ability to create. That fun creation market is still going on today, now we are onto fun interactive tools like augmented reality and location based games which are fun.

There are really inspiring innovations happening all the time in each generation but it does seem like the fun platforms and really interesting ones are led by gaming, or apps today, and areas approachable by designers and developers alike to create interesting games, apps, interactives and the platform makes it fun.

I think it is really important for platform designers/developers to make their platform approachable, simple and reduce complexity so that it can attract people interested in creating. I think an engineers job is to create simplicity from complexity, design platforms smartly with senior skill for the junior, in some areas today we are failing that due to heavily specialization. Every truly successful platform that really hit and progressed innovation/creation forward did exactly that.

</comment><comment><USER53> " _I think the people that first encountered computers when they were relatively simple and constrained have a huge advantage over the rest of us.

Today, (almost) everyone knows how to use a computer, but very few people, even in the computing industry, grasp all of what is going on inside of any single machine._"

An astute observation: I see a lot of complexity in IT today which obviously comes from not having a clue how the hardware functions and how it's efficiently programmed. The complexity, performance and resource hits grow with every layer of abstraction. Convenient for those who write software, very bad for users who then needlessly suffer.

</comment><comment><USER54> This is literally how I got hooked on computers in the 80s. That and a soldering iron.

<comment><USER5> +1 for the soldering iron. There was nothing quite so stressful as the first time you plugged in the prototype relay controller you'd built on Veroboard out of salvaged parts and a couple of 74-series logic chips. The whole thing was connected _directly to the CPU_ via the edge connector, and if you didn't have flyback diodes and enough decoupling then every time the relay switched, the computer would crash with a psychedelic random bitmap on the screen and you'd wonder if it would ever work again... Ah, the nostalgia!

</comment></comment><comment><USER55> A magic feature of BASIC was that you didn't need to learn different editors to get started. It was based on line numbers, so the line number was how you added, changed, and deleted lines.

I could walk into a computer store in early/mid 1980's at the mall, spot a model of microcomputer I never encountered before, and could type:

       10 PRINT "Oh no! Something is going to blow! Run!"
       20 GOTO 10
       RUN

Then scurry off while snickering.

</comment><comment><USER56> Can we replicate this experience on modern PCs using VMs?

</comment><comment><USER57> This brings back so many memories from being about 12 and figuring out BASIC on my dad's PC.

Why did programming get so complicated?

</comment><comment><USER58> I own 10printhelloworld.com, but unfortunately 20goto10.com is only available for a whole heap o' money. :(

</comment><comment><USER59> This is brilliantly written. Thanks and kudos to the author!

</comment><comment><USER60> This is my current research [1]! In 2015, I was at PyCon's Educational Summit when I thought about integrating some of what we do in martial arts to CS - drilling moves to use in sparring/randori. Sparring/randori is a high intensity activity that requires fast problem solving skills which rely heavily on muscle memory due to the speed involved. Additionally, forcing a beginner to spar is one of the fastest ways to make them quit [2]. I think this is one of the reasons why CS has a high dropout rate - we are asking them to "spar" (problem solve) too early or incorrectly and as a result they quit because they hate feeling like failures. Instead there should be some level of drilling before getting "thrown to the wolves" (as I used to tell my students) to build their confidence and understanding. I don't think traditional small/large scale programming exercises fully tackle this problem.

I think drilling is something we do in almost all technical skill development (music, art, athletics, vocational) and I wanted to bring the same thing to my CS courses - so I started requiring typing exercises as one of their assignments for the week. These aren't just "typing a for loop 10 times", but additional context (for example, the link below shows regular expressions for addresses) to give them something they could use as a template for their programming exercises. To combat copy and pasting, I just made the code an image. In my first link, you'll see an example of using a regular expression to validate addresses. After completing this, the students would then be required to complete some Q&A exercises as well as traditional programming exercises where they needed to design functions that: validate phone numbers, (a limited scope of) email addresses, and Social Security Numbers. The objective of that week was to get them familiar with regular expressions, not finding a StackOverflow link that teaches them how to implement regular expressions.

As the article says, this is what we did in the 80's. That doesn't make it better, it just makes it how things were done "back in the day..." However, K. Anders Ericsson states that early specialization is often a key determinant to future mastery and that deliberate practice refines areas where an individual struggles and may be unenjoyable [3] (see my older comments on grit/perseverance). Likewise, syntax errors are one of the first problems novices face [4]. By completing typing exercises, the learner does not need to worry about using problem-solving skills, which they may still be struggling with, just the correctness of the typed characters. Thus, typing exercises give the learner a deliberate practice resolving a simple, but major issue. Additionally, typing exercises remove students' ability to just "copy and paste" before using example code. With syntax errors mostly resolved, the student can then focus on problem-solving rather than where the semicolon should go.

I currently have a SIGCSE paper under review, but the gist of the paper is that students that voluntarily completed typing exercises performed better in their class than students that did not. The students may have just been more motivated and therefore that is why they scored higher, so there is a limitation to my study. I could require it, but then designing a control group that would receive the same amount of learning would be difficult as well.

[1] [https://research.csc.ncsu.edu/arglab/projects/exercises.html](https://research.csc.ncsu.edu/arglab/projects/exercises.html) (the Heroku link is currently down as I've made recently changed to the live version)

[2] [https://www.youtube.com/watch?v=hHebXvoHue0](https://www.youtube.com/watch?v=hHebXvoHue0) (Rener Gracie is a character, but listen to those first few minutes)

[3] [https://en.wikipedia.org/wiki/Practice_(learning_method)#Del...](https://en.wikipedia.org/wiki/Practice_\(learning_method\)#Deliberate_practice)

[4] [https://dl.acm.org/citation.cfm?id=2677258](https://dl.acm.org/citation.cfm?id=2677258)

</comment><comment><USER11> _I think the people that first encountered computers when they were relatively simple and constrained have a huge advantage over the rest of us_

It is not a blessing but a curse. If you understand the computation you will spend so much time wondering "WTF is this (modern) computer doing" when it fails to do something simple that you know an older machine with a tiny fraction of the power could do easily.

<comment><USER61> Like the crazy latency times from pressing buttons to letters appearing on the screen. I see it's much faster on hc than other websites but not hardware interrupt fast. Why in the world does it have to be usb.

<comment><USER62> USB isn't really the problem, it's all the code that feels it has to get involved in handling the event. Lots of websites (e.g. Facebook) invoke all sorts of background network activity on keypress.

<comment><USER61> You might be surprised but I remember an article comparing various computers and input methods and it turns out that USB vs hardware interrupt(PS/2) is significantly more latency. Software plays a role but even e.g. vim vs an old- school computer actually has a noticeable difference. I haven't experienced this myself but I do know writers that use computers from the 80s for this exact reason( George R. R. Martin being one example). I have also heard from other people that have tried this that the QoL improvement is pretty big.

<comment><USER63> I think we need to take it one step at a time. First, let's kill the modern web, then continue to get rid of other layers of bloat on modern computers, and when all the low-hanging fruits have been plucked, we can do something about hardware protocol latency...

<comment><USER61> Agreed. But how do you kill the modern web? And how do you go about killing all the bloat underneath? Do you expect microsoft to fix windows? Or redhat to abandon systemd? Or wayland? Or the countless other bloated pieces of the puzzle? Honestly at this point unless we go back and remake everything from the start the interests are probably too big to be dealt with.

<comment><USER11> _But how do you kill the modern web?_

There's no actual need for a page to be 10Mb to deliver 5k of text and a 50k JPEG. Esp not on mobile.

<comment><USER63> Yeah, but the GP's question - the one that's really hard - is _how_ , not _why_.</comment></comment></comment></comment></comment></comment></comment></comment>


Groupon IPO could be as soon as Monday  - <AUTHOR> http://www.theregister.co.uk/2011/10/19/groupon_ipo_roadshow_next_week/

<comment><USER2> This headline is slightly misleading. The "roadshow" precedes the actual IPO by as much as six weeks.

Basically, the bank (or, in this case, banks) who are promoting the IPO take the company's management to meet potential institutional investors (funds who might be interested in taking a big chunk of the IPO).

Given Groupon's track record, I wouldn't expect the roadshow to be particularly smooth. Questions like "Why did you, the other founders and early investors take nearly a billion dollars out of the company?" and "Explain to me how you're going to able to make money when everyone and their mother is entering the daily deals market?" are likely to arise.

(See <http://goo.gl/ci9k0> and <http://goo.gl/qi8xa> for my take on the whole affair.)

I also believe that, in the roadshow, Groupon cannot share any information that's not already in their S-1 filing. Which means that the people Groupon will be pitching to will be getting exactly the same information that we already have.</comment>


A Kickstarter gone wrong - <AUTHOR> http://www.gamasutra.com/view/news/176458/Chris_Crawford_reflects_on_a_Kickstarter_gone_wrong.php

<comment><USER2> Could be sour grapes. How does this guy know why he wasn't funded? He blames the community. Surely his environmental, educational game is not at fault. I don't know, but I know he must naturally be quite un-objective.

</comment><comment><USER3> "With his funding, he planned to make the game available for free on the web, and Crawford suspects that's one of the main reasons why his campaign went down in flames."

Perhaps of note is that Kickstarter's model is based off the Street Performer Protocol, originally intended as a solution for getting private funding for free, public goods.

There is a whole Open Software category on Kickstarter, so clearly "free" is not a reason his campaign failed. Quite frankly, it failed because his vision put "simulation" before having an actually engaging game.

</comment><comment><USER4> "In my case, I had a working game that was only halfway finished, so everybody saw a zillion flaws. There's an interesting question there: Is it better to show a half complete thing to give people an idea of what it is, or do you keep it all hidden until it's ready?"

I suspect that was the primary cause here, far more than any other factor. Kickstarter is for selling a vision, and a half-reality is the worst version of a vision.

</comment><comment><USER5> Or "How to shoot yourself in the foot" kickstarter project page: [http://www.kickstarter.com/projects/544670315/balance-of- the...](http://www.kickstarter.com/projects/544670315/balance-of-the-planet)

<comment><USER6> The guy is complaining about "the community" but really doesn't understand the people he's referring to at all.

</comment></comment><comment><USER7> The biggest problem for me was that he didn't explain why the project needed $150k. From the (granted, simplistic) explanation, it sounded like something that could be built in Flash in a couple of months.

<comment><AUTHOR> Most of the work went into the simulation, not the UI. That's why it looks like it could be done simply in flash. (BTW I used JSF, with JQuery and CSS, but that does not matter so much). He has been working on this project for well over a year, and has blogged his work: [http://erasmatazz.com/TheLibrary/GameDesign/DesignDiaryBotP/...](http://erasmatazz.com/TheLibrary/GameDesign/DesignDiaryBotP/DesignDiaryBotP.html)</comment></comment>


Angry Birds developer claims MS jumped the gun,'not committed' to Win Phone 7 - <AUTHOR> http://www.engadget.com/2010/10/10/angry-birds-developer-claims-microsoft-jumped-the-gun-rovio-no/ <comment><USER2> Migrating games to WM7 is not that easy because WM7 does not support OpenGL ES AFAIK. Rather, you have to write using XNA. This is rather unfortunate because iPhone, Android, Symbian^3, Meego, WebOS and the new blackberry tablet all support OpenGL ES 2.0 (which I believe Angry Birds uses heavily).

Briging an iPhone/Android etc game to WM7 requires a rewrite almost from scratch. So I can imagine developers being reluctant but possibly game studios doing PC and Xbox development might be more willing to write for WM7. And I must say MS has been able to attract a decent game developer audience considering the released official list of games available for WM7.

<comment><USER3> I'm surprised that WM7 doesn't support OpenGL ES. For the launch of the Xbox, Microsoft was very careful to make it easy on developers (e.g., with XNA, which was useable on the PC, Xbox and Xbox 360). This is in contrast to Sony with the PS3 which wasn't as careful about efforts to support developers.

As a side note, Kaz Hirai, CEO of Sony Computer Entertainment, said this lack of developer support was intentional: "We don't provide the 'easy to program for' console that (developers) want, because 'easy to program for' means that anybody will be able to take advantage of pretty much what the hardware can do, so then the question is, what do you do for the rest of the nine-and-a- half years?" Needless to say, this seems absurd.

To attract developers and apps to WM7, Microsoft should be thinking about ways to make it as easy as possible for developers to port apps from existing platforms over to WM7 (particularly from iOS and Android). WM7 is already facing an uphill battle. There's no reason to create more friction in the system.

<comment><USER4> > I'm surprised that WM7 doesn't support OpenGL ES.

Really? They have their own platform, tools and technologies which they're clearly trying to push and which unify their offerings, how is that surprising exactly? Last time I checked, the 360 offered absolutely no support for OpenGL.

> Microsoft was very careful to make it easy on developers

For developers using Microsoft technology. Windows Phone 7 mandates .net for development, either Silverlight or XNA (for games) and forbids C or raw C++. As with Android, WP7 will be launching without an NDK.

<comment><USER3> When you're essentially facing no competition (e.g., Windows, Office, 10 years ago) you can push a closed approach. When you're behind and facing two formidable rivals (Apple and Google), you need to apply a different approach.

Apple learned this lesson upon Steve Jobs return. The first iMac was much more compatible with PC peripherals. The compatibility was further enhanced when Apple shifted to Intel processors. This compatibility certainly helped Apple attract more customers and complements to its platform.

<comment><USER5> > The first iMac was much more compatible with PC peripherals.

I could be remembering wrong, but this sounds like revisionist history. The original iMac was compatible with USB (and relied upon it); most PCs didn't come with USB ports, and most peripherals didn't support it. Since USB is a universal standard, however, it gave manufacturers an opportunity to make one device that supported both systems (vs. making one that supported Mac-specific printer ports and parallel ports).

This was part of the appeal of USB in the first place, but when the iMac was launched that was not a huge selection of peripherals that suddenly worked everywhere.

<comment><USER3> Here is the timeline: USB 1.0 was released in January 1996. Windows 98 launched in May/June 1998. Windows 98 was the first MSFT OS with native USB support. The first iMac was launched in August 1998. USB 1.1 was released in September 1998.

According to a June 1998 CNET article titled "Peripherals to surge with Win 98," Rob Bennett, group product manager of Windows 98 stated: "There will be a pretty impressive showing of peripherals this summer..There are 250 devices due to be launched around Windows 98 and 100 in development [to be] released in the next year..."

([http://news.cnet.com/Peripherals-to-surge-with- Win-98/2100-1...](http://news.cnet.com/Peripherals-to-surge-with- Win-98/2100-1001_3-212671.html#ixzz1212GMjKK))

Looking through Google news archives for 1998, I see the following devices with USB support: Logitech scanners, Intel video cameras ("Create and Share"), Imation and Iomega high capacity drives, Kodak digital cameras, joysticks, modems, etc.

Hence, there was a collection of PC peripherals supporting USB around the time of the Windows 98 launch (in May/June) and the iMac launch later in the year (August).

<comment><USER6> _Windows 98 was the first MSFT OS with native USB support_

Windows 95 OSR2 supported USB (and FAT32) and IIRC was released in 1997, before the iMac. Another popular historical tale about the iMac is how it did away with floppy drives - however few people remember that the number one selling iMac accessory for the first few three years, with a huge attach rate, was the external floppy drove.

<comment><USER3> Yes, USB support was only available in OEM versions of Windows 95 -- starting with OEM Release 2.1 (<http://support.microsoft.com/kb/253756>).

Windows 98 was the first with native USB support.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER7> I recently spoke to devs who are in the microsoft program. They say Windows Mobile 7 launch is premature. The documentation is not complete and many things are not at all described and have to be asked to a marketing person, who asks a tech guy, etc. Furthermore, Microsoft is signing contracts stipulating 1 to 1 ports of games and apps (they are paying the top devs to do this). However, some things are impossible to port. For example, you cannot show an embedded browser in some games in WM7, but facebook integration needs an integrated browser to display their authentification stuff.

So it's all really problematic and difficult.

The licensing fees for WM7 are also the highest in the market for handset developers (not sure about this, someone just told me).

Also, iPhone ports between the two is very difficult, because you need to translate Objective C to C#, then translate OpenGL to DX. You may as well just rewrite the game. Porting process is taking about half the time to develop the original game, according to my dude.

<comment><USER6> _They say Windows Mobile 7 launch is premature. The documentation is not complete and many things are not at all described and have to be asked to a marketing person, who asks a tech guy, etc_

This is not unusual when working on a new or unreleased platform. I was the lead engineer on a PSP launch title and parts of the docs were still in Japanese, we had both windows & Linux tool chains that were buggy in different ways, and getting answers to most questions involved asking a guy in the US who would have it translated and sent on to Japan. Oh and we had one devkit between every two engineers for most of the project :)

PS3 was better, but still nothing you would describe as ideal.

Working on the first wave of software for a platform can be fantastically exciting and very rewarding, but on the flip side you're pretty much guaranteed to run into bugs and situations that no one foresaw.

</comment></comment><comment><USER8> If I were a betting man, I wouldn't spend a spare second porting my app to wm7. The wisest move is just to wait at this point. But, doesn't seem likely that Angry Birds would appear on wm7.

</comment><comment><USER9> No additional detail in the article really, I have the same questions I had after reading the headline. Not committed how? Jumped the gun on what?

I can see not wanting to spend time in WM7 when you have Samsung announcing 5,000,000 Galaxy S sold and all of your games don't run on Android yet but why not just come out and say it?

<comment><USER10> On the other hand, when MS has done some advertising for you like that, why not take advantage of it.

I agree that the article is really short on details.

<comment><USER11> Right now, the Angry Birds brand is way stronger than the Windows Phone 7 brand. A cynic might say MS were trying to capitalise on that.

</comment></comment></comment><comment><USER12> What this implies is good though... The success of phone/handheld platforms is tied to successful titles by smaller independent game companies. The games/apps available are the switching cost.

Why switch platforms ever if you bought everything on iTunes or Android Store? The developers and content are a huge part of that.

<comment><USER13> I don't know whether switching costs matter. Apps are so cheap compared to the cost of the phone. Even if someone spends just as much on apps it's not as though all those apps will always be used. Why would you lose sleep when you can't play that $1 game anymore you already beat anyway?

I think that apps can strengthen your brand. Everybody knows that Angry Birds is an iPhone thing. Others want to show that they have it because it's trendy.

<comment><USER12> When it comes to apps, but more music and movies. Yes that will play into decisions heavily. Why would I buy an Android pad over an iPad if all my games, music and apps are on iTunes. It was the same with Windows desktop lock in (games and apps).

<comment><USER13> Music I can understand. I wouldn't want to be unable to listen to it on a mobile device other than an iPod or iPhone. It's personal and I have spent a lot of money on it. (Music from the iTunes Store doesn't have DRM anymore, though.) But something as ephemeral as apps? I have spent maybe $100 or even $150 on apps in the last two years (which gets you a ton of apps) but I wouldn't miss much more than maybe $15 of apps were I to switch. That's nothing.

I can understand that you don't want to spend something like $3000 just to get the Creative Suite and Office after you switched to a Mac but apps are somehow completely different (ephemeral, cheap, disposable).

<comment><USER14> >>apps are somehow completely different (ephemeral, cheap, disposable).

For many, it might be a time investment to evaluate apps in different areas to find those which solves their problems.

</comment></comment></comment></comment></comment><comment><USER15> Perhaps I'm alone in this, but I first read the headline as claiming that Microsoft _itself_ is not committed to Windows Phone 7, which clearly is not the issue discussed here (they do seem very determined to succeed).

</comment><comment><USER16> Anyone know enough to guess the amount of time that would be required to post Angry Birds to a Windows Phone 7?

<comment><USER17> Considering they have not released the full android version, and the fact that they can't use any of their existing code -- quite a while. I also think they can't use any of the open source libraries they used on iPhone, Android , etc... because they have to use XNA.

If i were them, I'd wait untill Microsoft adds native support. By the time they finish their game using XNA they might have released native support, and then they're stuck with 2 codebases.</comment></comment>


Are you my cofounder(s)? - <AUTHOR>

<comment><AUTHOR> So, I did not get an interview. The purpose of me entering was to network and connect with possible team members for my current project. I am a non technical founder who has gone at it with a team of hired individuals. I am a business guy at heart and understand tech from a product and design standpoint better than most, but I can't write code. I have invested over $100k of my own money into the project. I am looking to bring on board two rockstar programmers as cofounders.

The site is www.stuzo.com. We currently have close to 7,000 community members and the site has some revenues. The site was originally launched as an intercampus textbook exchange that enabled college students to buy and sell online and then to meet on campus for the exchange. The model and the site have gone through a complete overhaul over the past 6 months. The new site just went live today. We are tidying things up this week and will begin a grassroots on/offline marketing campaign next week. My goal is to connect people through the media they own, love, and want. There is still a lot of work that needs to be done to build out the vision.

Check out the site and drop me a line if you like what you see. You can reach me via aim/gtalk/skype. My name for all is stuzoguy.

<comment><USER2> How long have you been working on the site?

<comment><AUTHOR> I worked (by this I mean marketing the product) on the textbook site for over a year before changing course about six months ago to our new direction. We have not started to market our current site. Send me some more info about yourself or contact me via IM if you would like to continue this.</comment></comment></comment>


One Lawyer, One Day, 194 Felony Cases - <AUTHOR> https://www.nytimes.com/interactive/2019/01/31/us/public-defender-case-loads.html <comment><USER2> 3 dups of this story, but one has comments - [https://news.ycombinator.com/item?id=19064382](https://news.ycombinator.com/item?id=19064382)</comment>


The Dark Energy of a Theoretical Physicist - <AUTHOR> http://www.newyorker.com/culture/persons-of-interest/the-dark-energy-of-a-theoretical-physicist?mbid=social_facebook <comment><USER2> There's a tendency in the popular science world and the physics world to glorify high energy physics, and string theory and all that goes along with it.

It's definitely useful - After reading one of those books I was pretty convinced I wanted to do a PhD in Physics. I'm currently four years into a PhD in physics, except in something completely removed from what she works on.

There is also a tendency to elevate theorists and denigrate experimentalists. The experimentalists work is often portrayed as 'dull and technical' and they only worry about the details, whereas the theorist dreams up these wild theories in flights of genius. I can't speak for anyone else, but this was true of school where I was from.

I'm just a little tired of this fairly one dimensional portrayal of physicists (theoretical or otherwise). There's plenty of interesting stuff out there that doesn't involve dark matter or strings (or quantum field theory!). Fluid dynamics is endlessly fascinating to me, or non linear systems ("chaos theory").

Lisa Randall is a phenomenal physicist and I don't begrudge the author her admiration - There just need to be more pieces like this about other facets of the sciences.

<comment><USER3> "The experimentalists work is often portrayed as 'dull and technical' and they only worry about the details, whereas the theorist dreams up these wild theories in flights of genius. I can't speak for anyone else, but this was true of school where I was from."

Woah woah woah. You trying to start a theory/experiment fight?

I'll just put in my 2 cents. Experiments are where all the cool action is at.

Also, scoreboard:

Nobel prize distribution (as of 2014). Theory: 30.75 prizes (28.7%) Experiment: 76.25 prizes (71.3%)

<comment><USER4> There are much fewer theorists compared to experimentalists.

<comment><USER5> That's surprising if true because it doesn't take much resources to become a theorist vs. an experimentalist. Usually a modern computer will do. An experimentalist is usually out >$1e6 to setup a novel lab.

<comment><USER6> I, too, have a feeling that in the 21st century theoretical physics (understood as mathematical, or computational, physics) is destined to replace experimental physics in all areas - except those that do not yet have an effective mathematical model to work with. (I do not know if String Theory can qualify as such.)

</comment></comment></comment></comment></comment><comment><USER7> I don't know. For a writer looking for inspiration for a character, she doesn't seem to be doing a very good job relating to or understanding Lisa Randall.

It reminded me a bit of The Big Bang Theory.

</comment><comment><USER8> > New York _Times_

Is this just a New Yorker-ism? If they're referring to NYT, I've never seen it formatted that way.

<comment><USER9> It's a New Yorker-ism, much like "coördinate".

<comment><USER10> I've been reading the New Yorker for years (though I feel they've become even more politically charged than usual within the past year and have since stopped) and was always irked by those damn diaereses.

It makes "oo" easier to parse as separate syllables, but English has a huge amount of non-phonetic words. Why does this get an exception?

</comment></comment></comment><comment><USER11> Too bad recent discoveries rule out Dark Energy: [https://news.ycombinator.com/item?id=12783631](https://news.ycombinator.com/item?id=12783631)

So, this can read - The Phlogiston of a Theoretical Physicist.

<comment><USER12> > Too bad recent discoveries rule out Dark Energy: > [https://news.ycombinator.com/item?id=12783631](https://news.ycombinator.com/item?id=12783631)

The methodology of that paper has been questioned by other researchers in the field[0]. Among other things, the paper claiming cosmic acceleration was not significant did not factor in constraints on cosmology from other types of observations (e.g., cosmic microwave background, baryon acoustic oscillations).

[0] [https://arxiv.org/abs/1610.08972](https://arxiv.org/abs/1610.08972)

<comment><USER13> That paper's abstract seems to be "We're not systemically wrong so we're not systemically wrong, ergo, the result shouldn't be interpreted as us being systemically wrong", without ever actually addressing the possibility that they're systemically wrong (eg that an unfounded assumption is in all of the models with the "correct" value), but I feel that the actual thrust is meant to be something about independent lines of investigation.

Could you elaborate a little more on what they're actually saying, since I don't seem to understand it?

In particular, where they show that their lines of investigation are actually decorrelated in terms of assumptions (ie, there can't be a common, systemic conceptual flaw in all of them), or that those assumptions are all included by the disagreeing model? Because otherwise, it seems a bald assertion that their assumptions are correct.

<comment><USER12> Regarding being systematically wrong, the rebuttal paper is essentially arguing that, by ignoring other cosmological measurements, the original study refuting acceleration is potentially falling prey to systematics. The other cosmological measurements that are typically used rely on completely different observing techniques and physical processes.

Baryon acoustic oscillations[0] (BAO) rely on there being a predicted characteristic length scale based on when the baryons and dark matter de- couple from each other. By measuring the large-scale distribution of galaxies you can measure this characteristic length.

The cosmic microwave background[1] (CMB) is looking at the redshifted thermal emission from the hot plasma which filled the Universe during its youth. The brightness fluctuations correspond to temperature fluctuations in the early Universe.

Both the BAO and CMB are sensitive to the energy content of the universe and the relative balance between baryonic matter, dark matter, and any dark energy. Examining the BAO signal as a function of time may provide constraints on the acceleration (if the characteristic length scale grows faster than expected from a non-accelerating universe, I believe). Additionally, the power spectrum of the cosmic microwave background is sensitive to the existence of dark energy[2, e.g., pg 24].

Because these three measurements (BAO, CMB, Type Ia supernovae) are looking at completely different things (characteristic separation between galaxies, temperature distribution of hot plasma when the universe was 380,000 years old, and apparent vs intrinsic brightness for a special class of supernovae) which can be linked back to cosmological model parameters, it is unlikely that the systematics of all three would conspire to provide a false signal of dark energy. So, using all three as simultaneous constraints makes it far less likely to be mislead by systematics inherent in a single one of those three datasets.

Another aspect of the rebuttal (which I don't really understand because I don't work on Type Ia supernovae) is that the N16 authors made an assumption for the luminosity-corrections of the Type Ia supernovae that could increase the derived luminosity; this would reduce any signal of acceleration. The authors of the rebuttal also argue that this is part of what resulted in the decreased significance found by N16.

So, from my understanding, the rebuttal is essentially arguing that N16 incorrectly computed the dark energy signal by using an incorrect correction to the Type Ia supernovae and by ignoring additional cosmological datasets.

[0] [https://en.wikipedia.org/wiki/Baryon_acoustic_oscillations](https://en.wikipedia.org/wiki/Baryon_acoustic_oscillations)

[1] [https://en.wikipedia.org/wiki/Cosmic_microwave_background](https://en.wikipedia.org/wiki/Cosmic_microwave_background)

[2] [http://www.quantumfieldtheory.info/cmb.pdf](http://www.quantumfieldtheory.info/cmb.pdf)</comment></comment></comment></comment>


New closure allows camping mattress to be inflated in seconds - <AUTHOR> http://www.kickstarter.com/projects/1484284472/windcatcher-inflates-in-seconds-with-no-power-or-p <comment><USER3> I'm afraid there's already a matress that does this. It's from exped, I own one and it's awesome, and better implemented than this because you're only inflating a small pump sack, and can use it to build pressure in the mattress.

Here's a video: [http://www.exped.com/exped/web/exped_homepage_na.nsf/b43popu...](http://www.exped.com/exped/web/exped_homepage_na.nsf/b43popup4/2A9E7D03BE26A60DC125767E00705EAE?Opendocument)

<comment><USER4> That looks much slower, more complicated, and more expensive.

<comment><USER3> It is more expensive but only because it has an R value of 8.0 (the Kickstarter one has an R value of 1.0, which means it's not going to give you any protection from the cold ground whatsoever - even a self-inflating pad gives you more protection than that). You'd be amazed how much difference higher R values make on the quality of rest you get while camping.

Is it slower? Maybe, but I inflate mine in two or three inflations of the bag, and that takes me around 60 seconds - it's really not a long time in the big scheme of things - it takes a lot longer to get the tent erected (although that's down to about 5 minutes now). The problem is you can't inflate a high R-value pad without pressure - the reason his inflates so fast is there is no insulation, no down, no pockets, so the air can just go right in. But then so does the cold.

Anyway all I was saying is this isn't a new technique - there's a mattress you can buy today from any MEC/REI that uses this technique.

<comment><USER5> Whereas your first comment came off as a bit pithy, this was a really informative one. Thank you for the lesson on r-value and its importance. Not an avid camper, but I sometimes do overnights in the cold and today I learned something important about air pad insulation. Thanks again.

Per REI's page on the topic, here's what they have to say about R-value: "Insulation is measured according to its capacity to resist (that's the "R") heat flow. The higher a pad's R-value, the better you can expect it to insulate you from cold surfaces. The R-values shown on REI.com product pages are provided by the manufacturers and range from 1.0 (minimally insulated) to 9.5 (well insulated). Thicker pads generally offer higher R-values."

Source: [http://www.rei.com/learn/expert-advice/right-sleeping- pad.ht...](http://www.rei.com/learn/expert-advice/right-sleeping-pad.html)

<comment><USER6> I looks like a wool blanket could help (R value around 4) <http://en.wikipedia.org/wiki/Wool_insulation>

<comment><USER3> The problem is that adds to your weight. Not important if you're car camping, but important for hiking.

</comment></comment></comment></comment></comment></comment><comment><USER7> These guys have taken the same physical phenomena used in the newish Dyson fans and hand dryers and found a radically different way to use it.

This looks as simple as a paper clip and I think in years to come many people will wonder why they didn't think of it first. True genius

EDIT: I stand corrected by HN. There are number of bags that use similar techniques and apparently airplane evacuation slides inflate using that physical phenomena as well.

<comment><USER8> Speaking of which, I wonder if they'll need to deal with patents. From what I understand Dyson has that technology wrapped up tight.

PS - Dyson's fans are also terrible. Great concept, poorly executed. They wanted them to be sleek, so they used tiny motors which are LOUD making Dyson's Air Multiplier far louder than other fans WITH blades.

PPS - <http://www.youtube.com/watch?v=fVbEE0Qe4BQ>

<comment><USER9> I haven't (and will not) invest any time doing the numbers but, a quick think about the Dyson fans leads me to conclude the whole thing is a big marketing scam. Kudos for pulling it off, but the thing ain't magic.

For starters, it has blades. It definitely has blades. They are simply concealed. It's like saying my computer has no fans when the fans are not visible from the outside. Nonsense.

Second, it takes a certain amount of power to accelerate a mass of air to a given speed. That does not change magically because the thing has a Dyson sticker on it. The most efficient way to accelerate a mass of air is, wait for it, a properly designed fan. It am pretty certain the Dyson contraption is actually much less efficient than a properly designed plain fan which produces the same airflow. It absolutely could not be more efficient, no way. Nowhere in conventional physics do you get more --of anything-- than you are entitled to.

In fact, the larger the fan the more efficiently it can accelerate a mass of air. Because the Dyson fans are constrained by the small space of the base they have to use screaming little fans to push against the back-pressure produced by the path the air has to follow.

Maybe not as sexy, but a really well designed fan with optimized airfoils and balanced rotor IS magical in the sense that it can be so much better than the stamped metal contraptions one usually finds at the store. I have seen fans like that come-up here and there but they are rare.

I did a project many years ago where we had to design and optimize an efficient cooling system for a 1500 Watt LED array. We ultimately ended-up going with a hybrid fluid/air system. However, for the bulk of the project we tried to make an air-only approach work because it was deemed simpler and easier to manufacture. I learned a lot from running tons and tons of FEA fluid and thermal simulations as making a number of prototypes. There is no free lunch (AKA: Conservation of Energy).

<comment><USER10> I haven't seen any checks on this, but I suspect the Dyson can probably move more air than a regular fan. It probably isn't more raw energy-efficient, but it _can_ be more comfort energy-efficient (more comfort for the same energy), because their principle makes sense -- if you use a regular fan, you air speed is going to be dictated by the blade speed, while the amount of air depends on the area. With the dyson, they can get a much greater area, which dictates confort, with the same air speed, because they've distributed the stream along this circle, and it picks up more air as it goes (and loses speed).

My point is, it may be poorly executed, but in principle it sounds nice, not even taking into account you don't actually have an exposed blade to worry about. It's not a scam.

<comment><USER9> And I am arguing it is complete hogwash.

If a ring of air magically propels a lot more air around it, do you think a fan of the same diameter might just compel the same air molecules to follow suit?

> if you use a regular fan, you air speed is going to be dictated by the blade > speed

On the Dyson air speed IS dictated by blade speed. They have a damn fan at the base pushing air through the system and they use that air to accelerate some more air around it. Again, I am not going to waste my time doing any math. My educated guess is that the efficiency, when compared to a properly designed fan of the same diameter is atrocious.

One other point, air speed coming out of a fan is not solely dependent on blade speed. Blade shape, diameter, angle of attack, duct length and even airfoil come into play.

You also have centrifugal, fans which operate under slightly different principles and can deliver airflow at greater pressure than axial fans.

More importantly, if you are trying to cool something air speed isn't always the most important criteria. The volume of air moved per unit time is extremely important. It has to be matched to the thermodynamics of the heat exchange that will happen with whatever it is you want to cool Delivering air faster and with greater volume than necessary is a waste of energy.

</comment></comment></comment></comment></comment><comment><USER11> The Kickstarter itself says: "You're supporting an entirely new type of technology that has the potential to inspire new ideas and future innovative products."

No, you are not. Exploiting the pressure difference like this for inflation is not new by a long shot. Just pop down to REI: <http://www.rei.com/product/829645/exped-schnozzel-pumpbag>

Edit: read rest of replies below for clarification.

<comment><USER12> There are also entirely passive self-inflating mattresses out there. They're filled with (solid-gas) foam that expands when you open the valve. Close the valve and it's ready to go. You store the energy for pumping when you deflate the mattress by rolling it back up. It's much easier to provide energy by sitting on something than by blowing into it :)

I don't know the brand name, only that they were old and worn by the time I was using them as a kid. They must have been commercially available around 1990.

<comment><USER13> You're probably thinking of Therm-a-Rest mattresses. According to Wikipedia, they've been around since the early 1970s.

<comment><USER12> Yes! That's the brand name. I remember the logo!

</comment></comment></comment></comment><comment><USER14> The valve is based on the Venturi effect. The fluid flow through a constriction lowers the pressure at the constriction point. An inlet at the low pressure point will allow addition fluid at atmospheric pressure to enter through the inlet in the constriction thus adding to the total fluid through the outlet. Pretty clever use of fluid dynamics!

<comment><USER15> Avalanche airbags use the same principle to inflate larger than the volume of compressed air in their canisters.

</comment></comment><comment><USER16> In one of my first year physics course they showed a great demo based on this principle. A student was challenged to inflate a _huge_ bag as much as possible. They always did miserably, only filling the bag to about 1/8th. The lecturer then used this technique to fill the entire bag in one hit. A great demo that I'll never forget.

<comment><USER17> This is a great demo - it's often done at kids' science museums as well, if they have an instructional area. Particularly with kids' tiny lungs, they can only fill a fraction of the bag, then when they do it this way, they fill a bag bigger than themselves. It's definitely memorable.

</comment></comment><comment><USER18> I love software innovation, but somehow it always impresses me more to see real world mechanical innovation like this, true old-school inventor entrepreneurship. Seems like a legitimately great idea.

<comment><USER19> It should impress you more!

For all the talk of "changing the world" that comes in the software start-up scene, it's the physical inventions[1] that have more obvious & immediate impact on the world - and by "world", I really mean developing countries instead of our first-world problems(annoyances really). These fast- inflating/deflating mattresses would be very helpful in those countries.

1\. <http://vimeo.com/53588182>

</comment></comment><comment><USER20> Nice concept, but I'm wondering how inflating a mattress in this manner will allow you to achieve the pressure needed to support your weight.

<comment><USER21> By laying on it, you're compressing what's in there, and it pushes back on you. There's no need to ever inflate a mattress like a bicycle tire.

<comment><USER22> My back hurts just thinking about sleeping on an underinflated mattress. More power to you if it works for you.

<comment><USER23> The opposite is actually true. I sleep a month a year on a camping pad, and it's well known among avid backpackers that air pads like that shown in the OP are most comfortable when under inflated enough to keep your hips just above the ground.

</comment></comment></comment></comment><comment><USER24> I don't really see the appeal for mattresses. I have a very comfy foam/air mattress just about fits in my pocket and inflates faster than their demo.

My tent, on the other hand, has an inflatable beam that takes a good minute to blow up...

<comment><USER25> What brand of air mattress do you have, if you don't mind my asking?

<comment><USER24> I think it's this one - [http://www.multimat.uk.com/store/products/superlite- compact-...](http://www.multimat.uk.com/store/products/superlite-compact-25)

Its pretty easy to get it down to about 25x10x3cm. I travelled with it for three years without any punctures.

This is the tent - [http://www.backcountry.com/nemo-equipment- inc.-moto-1p-super...](http://www.backcountry.com/nemo-equipment- inc.-moto-1p-superbivy-1-person-3-season)

<comment><USER26> Totally different product really...

</comment></comment></comment></comment><comment><USER27> Ok, i'll play devil's advocate : Windcatcher works as same principle as evacuation slides on planes and even if it's about physics i think it's somehow ( design ? ) patented.

So, what about patents ? Is there any patent that product violate and may cause later any problem ?

<comment><USER28> Say it's the exact same mechanism as evacuation slides.

Patents in the U.S. since 1995 have had a term of 20 years, prior to 1995 it was a term of 17 years.

The slides were initially patented in 1956. In 1956 the U.S. patent term was 17 years; those patents expired in 1973.

But, let's suppose some advances were made and the specific valving mechanism was patented later. It would have had to have been invented and patented some time after 1995 to still be covered by a patent.

If it were patented any earlier, its term will have expired and the idea is now in the public domain, which means anyone can use the idea without paying anything.

<comment><USER27> Thanks for the clarification.

They should really add some info about patents and prior art on kickstarter page. And i hope , just to be sure , they applied for a patent their design.

</comment></comment></comment><comment><USER29> It is interesting as what other application this would have?

If I could replace my mouth (the source of the wind) with an electric fan, what else can I do with this?

<comment><USER30> Or with actual wind. Scale it up, use it for rapid construction of emergency housing? An inflatable former can be covered with concrete quickly and then deflated.

<comment><USER31> How large would it need to be scaled in order to generate useful amounts of power by sticking a wind turbine on it?

</comment></comment></comment><comment><USER32> The stuff about inflating with your mouth is a bit of a straw man. If you inflate say a Thermarest NeoAir or a Packraft you're more likely to use something like an Instaflator now:

<https://www.youtube.com/watch?v=yJLVYfg88TE>

(Thermarest have their own variant on the bag inflator for the neoair - <USER2> the principle's the same)

<comment><USER33> The backpacking mattresses are still inflated by mouth - I'm certainly not carrying another 2 oz on my back for a week just to save a minute on inflating. And neither are any of the folk I go into the backcountry with.

But this mattress is not aimed at us either - it weighs in at 24 oz with an R value of 1!

So perhaps the Thermarests owned by people who'd buy this are currently being inflated by Instaflators...

<comment><USER32> I did say 'like' an Instaflater - it's the mechanism I meant. The thermarest pump sack doubles as a stuff sack, so it's not dead weight like the Instaflater.

I'm a bike tourer, not a backpacker, so I tend to shave weight when I can drop a pound not an ounce - carrying that isn't a big deal.

But yeah, 24oz and R 1 is pretty bad.

</comment></comment></comment><comment><USER34> I don't get all the negative, visceral reactions to this product.

Who cares if the physics/technology is "breakthrough"?

It's clear that this is being positioned as a suitable alternative to the battery operated pumped up mattress. The ones sold in Walmart, Target, etc.

I own one of those, and they are a pain to deal with. This looks awesome.

Who cares if there are others out there already - that proves that the market exists and the technology is feasible. My concern with this is, given that I don't understand the technology behind it, and I have never seen it before - is that it is too fanciful to work. i.e. is this another "Kickstarter fraud"?

The presence of existing products on the market that use similar technology is surprisingly re-assuring.

If I were an avid camper, I would definitely buy this.

</comment><comment><USER35> Ah, closures. Is there anything they can't do?

</comment><comment><USER36> There's a problem I had solved. Ver' nice.

<comment><USER36> Downvoted for agreeing that this solves a problem? Not belly-aching, but that was honest input.

I was happy to see someone build this; I've hated thermarest valves since I've known them.

<comment><AUTHOR> Someone might have read your comment as "There's a problem I had already solved" rather than "There's a problem I had, solved."

</comment></comment></comment><comment><USER37> So how does this work?

<comment><USER38> Scroll down the Kickstarter page for a very readable explanation:

"The secret behind the Windcatcher's amazing speed of inflation is its ability to leverage the awesome properties of air. Simply put, the two most important properties are:

\- Fast moving air has lower air pressure than slow moving air

\- Air with higher pressure will be drawn to areas of lower pressure

When you blow into the Windcatcher you create a stream of fast moving, low pressure air. Because it has a higher air pressure, the surrounding air is sucked into the low pressure air stream. As a result, the air entering the Windcatcher is at least 10 to 15 times greater than the air you expelled from your lungs."

<comment><USER39> I guess the final sentence is missing a "volume of", i.e. it should be something like "As a result, *the volume of air entering the Windcatcher [...]", right? I double-checked and this error is on the Kickstarter page, it's not your quote.

Just mentioning it in case the project owners drop by. Cool project, by the way!

<comment><USER21> I think they must mean the air itself is actually better quality than yours... 10 to 15 times greater.

</comment></comment></comment></comment><comment><USER40> Oh. I must be here to tell you that things that are inflated can do only one thing next.. I spend half my life outdoors and even though 75D ripstop is more than most, I fear entropy will eventually have its way. Btw I use a corrugated egg box kind of thing.

</comment><comment><USER15> Avalanche airbags use the same (or similar) phenomenon to inflate to a larger volume than the compressed gas canister contains.

I thought it was the venturi effect, but maybe entrainment is more accurate.

</comment><comment><USER41> I'm more interested in this "one-way valve" they're talking about. While they seem to talk mostly about blowing, the valve seems to be the actual invention.

</comment><comment><USER42> If this is their IP they should license the technology out to an established company. If this isn't their IP they're kind of screwed anyway.

</comment><comment><USER43> I like the concept. I'd be willing to contribute though if it deflated and folded up small instead. I don't mind inflating an air mattress.

</comment><comment><USER44> I hope they can patent this just so they're not ripped off by big generic companies. It's a great idea.

</comment><comment><USER45> It seemed like he had to blow pretty hard.

</comment><comment><USER46> Pretty awesome idea... I'd probably use it for my guest when they sleep over since i never go camping!</comment>


Full-time Dad vs Working - <AUTHOR> http://ryancarson.com/post/51082104802/full-time-dad-vs-working?utm_source=feedly <comment><USER2> I remember this guy - accidentally came across his blog and loved it.</comment>


WeWork Paid with Stock for Acquisitions; Investors Aren't Happy - <AUTHOR> https://www.wsj.com/articles/weworks-parent-paid-with-stock-for-some-acquisitions-and-investors-in-those-startups-arent-happy-11569532277?mod=rsswn <comment><USER2> I'm sure that stock looked pretty good at the time. Unfortunately it's hard to predict the future</comment>


Ask HN: best constraint solvers? - <AUTHOR>

Do HNer's know of any good libraries for solving constraint problems? Specifically, I'm looking for a Python library, as the project I'm working on is a Python/Django app. I've done a little research into this and so far I've come up with:
http://labix.org/python-constraint
http://pypi.python.org/pypi/constraint/
Just wanted to see if there were better libraries out there I may have missed, or if I would be better off looking in different directions. <comment><USER2> Have a look at: <https://code.google.com/p/or-tools/></comment>