Ask HN: Best way to introduce programming to a 5 year old? - <AUTHOR> I'm trying to figure out the best way to start programming with a 5 year old. I guess it would be nice to have some visual language and output. <comment><USER3> I'm not convinced that teaching kids how to code is a good idea, perhaps someone in hn could shed some light on how learning to code at a young age is a good thing. For me, important values to instill in a kid that will be conductive to their success as well as well-being are communication and empathy. The best way to achieve these is through diverse activities that involves teamwork and exploration. Rather than teaching kids how to code, sending them to be part of a sports team, band, and art group would be better choices. With these experiences interacting with people from different activities, the kid would grow up with more life experience and relate to others better, which translates to building more impactful products later on in life if they decide to pick up programming.

<comment><USER4> Furthermore, if your kid is an introvert that wants the easy escape of doing things alone on the computer, then force them to do things with other kids anyway. I wish my parents had done that with me. The existence of great programmers before the rise of home computers is proof that programming can wait for later. Some things are not so easily learned later.

</comment></comment><comment><USER5> I'm voting up all the [https://scratch.mit.edu](https://scratch.mit.edu) suggestions. I was active in that community and with the developers early on. I wish I had it when I was little.

You can browse projects with the 5 year old then view the source and figure out how they work. Show that they can change things.

It's awesome that you want to promote creation over just consuming content like most of their peers.

Scratch your own itch with it too. Make a 3d renderer or CRUD app, fractal explorer, or game... they might like to see what can be made and what excites you.

They may get into the story and animation projects made by other kids first, that's good too.

</comment><comment><USER6> This is adapted from a post I saw on HN years ago. Can't find a reference ATM, but the gist is:

Use a simple goal oriented task - picking up a ball from one end of the room and depositing it at the other end, navigating some obstacles (coffee table etc). You are the "robot" they are programming.

Provide a partial "instruction set" left, right, forward (1-step).

Let the child figure the algorithm to pick the object, navigate the obstacles and discover the rest of the instruction-set.

They string together a program as a string of post-it notes.

The only rules are the "robot" always runs the program from the beginning - <USER2> hot-patching. If the instructions bump you into a table, you stop. The child goes fixes the program, and you start over. Great for debugging skills and building abstractions in the head.

Incredible, how quickly they discover loops and functions. And very quickly learn to create program in the abstract for other tasks (unloading a dish- washer).

I never went as far as sorting lego bricks, but that might be another interesting direction to explore to introduce algorithms.

<comment><USER7> A simpler version of this when they're pre-literate is to put them on your shoulders and be the robot, but only listen to certain commands. I played this with my 4 (now 5) year old daughter and only responded to "turn," (I only turned left) "forward," and "stop."

Needless to say, she enjoyed spinning me in circles and running me into things. Eventually she learned how to actually navigate around the house.

</comment></comment><comment><USER8> 10 wait

20 if age < 7 then goto 10

I think you can introduce programming concepts into play, but I would leave (and have done) actual programming until they are a bit older.

There was a good example possibly linked on here a few days ago, where with a group of kids, one of them pretends to be a robot (they can take turns), and the others "program" the robot with simple commands (forward, turn left, pick up, etc, etc). It can be step-by-step to start with, and then they have to write down the steps in advance, etc, etc.

<comment><USER9> Disagree. I started programming when I was less than 4. My Dad had an Atari, and I would sit and copy the code from some books. I didn't know what I was doing, all I knew is that I wanted to play the game, since I saw my Dad do it.

He didn't force me at all, I just wanted to. So I would modify your pseudocode and add a branch for the kid's interest/aptitude.

<comment><USER10> Sorry, you were definitely not programming at 3 years old.

> _I didn 't know what I was doing_

At most you were developing fine motor skills. Maybe.

</comment></comment></comment><comment><USER11> When I was a kid, my father bribed and coerced me into playing with LOGO (really showing my age here). I ended up spending a fair amount of time playing with it, (I guess) learning a lot of basic programming concepts along the way. I have memories of my grade-school self struggling to grok recursion.

There were a few aspects of LOGO that made it nice to learn on: most notable was immediate visual feedback and the "telling the turtle what to do" approach to imperative thinking.

When my wife was pregnant, I was overcome with nostalgia about LOGO and hacked together an in-browser collaborative playground ([http://turtology.herokuapp.com](http://turtology.herokuapp.com)), which seems like a total dead end at this point. LOGO was genius in it's time, but it seems terribly dated now, even to my fanboy eyes.

Apart from Scratch (which has a bunch of mentions already), the nicest thing I've seen is Cubetto: [https://www.primotoys.com](https://www.primotoys.com) The combination of rapid feedback, simple interface and a real-world "avatar" for your instructions seem to make it really easy to figure out, as well as engaging. Also, now that I have a toddler, I can also appreciate the genius of the simple, physical interface. My 2-year old is still a long way from reading or writing, but is quite capable of recognising that a symbol can represent an action or concept.

Now I just need to figure out how to get one shipped to me (not trivial if you live in Africa).

<comment><USER12> My mother introduced me to LOGO at age 8. She was a teacher but could barely program herself. Pretty soon I was teaching myself from books.

</comment></comment><comment><USER13> Pick an easy language like python, then teach him in order:

        print, print, print
        print, input, print
        print, input, if print, else print
        print, input, for print
        func, print func

These are the basic building blocks of all computer programs in the universe, if he can master them and gets his curiosity in overdrive then he'll be a great programmer, a good skill to have even if he picks another career path.

</comment><comment><USER14> If there is a toy or app that has programming related activity in it, and they enjoy that app, then they will learn. Not only that, they'll learn faster and more independently than you can imagine. But in my experience it has to be something they really enjoy, it's hard to steer them.

As others have said, I think 5 is probably a bit early. It varies of course, but programming is so much easier when mathematics, words etc is a bit more natural. 6 or 7 is probably easier for most kids.

What I did was (this was an idea from a previous HN discussion I can't find) was sneak programming concepts into the little "riddles" kids want all the time when they are learning. "Dad ask me how to spell a word" or "Dad ask me to add some numbers" etc.

What I did was tell stories about "machines" that could take in something and output something. I say "ok, I'm thinking of a machine. It takes in a word, and outputs a number. Guess what it does.". The child can give example inputs, and I say what the machine outputs. They say "Cow" I answer "3". Very quickly they manage do deduce what the machines can do. A machine that doubles. A machine that adds 3. A machine that always returns 9. A machine that reverses strings. A machine that returns 1 if a word is longer than 4 letters otherwise 0. The "machines" are obviously "functions". And it's absolutely astonishing how quickly this concept sinks in. Even more fantastic is that more complex functional complex can be introduced just as easily. The idea of chaining two machines together (feeding the output of one to the input of another) gives composition. The idea of a machine that reverses what another machine did (inverse) etc.

</comment><comment><USER15> Start not with code, but with computational thought. Show them the basic of algorithms - not complex algorithms, just simple things - break down a goal into a specific list of ordered steps. Teach them loops, if/else, and such basic concepts.

You don't even need a computer for this. Many classrooms start with offline exercises, with the kids giving instructions to other people. Have them tell their friends step-by-step how to walk around an obstacle course, etc. That also will introduce them to debugging, as they will see right away how an inaccurate or incorrect instruction can go wrong, and they can correct it. When they are comfortable with all that, then you can step into talks of how you would structure such instructions for a computer, or as you said, use a visual tool for the same thing.

But stay generic - the concepts are far more important than any details at this point.

</comment><comment><USER16> I've been trying to teach my 5 year old with a custom language/app I built a while ago:

[http://modelian.com/](http://modelian.com/)

Basically, it's a programming language to make very basic 2d physics simulations.

It's actually gone really well, she loves changing the size and colors of the shapes. She's learned how to type (keys, capitals, arrows, backspace, etc...) and how to manipulate a lot of things.

I wouldn't say she is really "programming" yet; it's more of "I know this number changes the size of the block and this other thing changes the color". Anyways it's a great start and we have a lot of fun on it together.

(Note I built this a a while ago on Parse which has since shutdown so the saving/account functionality doesn't work any more. You need to copy your scripts to a text file to save.)

</comment><comment><USER17> I've heard that Scratch is a good language for children. [https://scratch.mit.edu/](https://scratch.mit.edu/)

</comment><comment><USER18> I'm considering the same with my kids but not done it yet yet. Scratch seems like a pretty good start. If they prefer seeing something more physical rather than an animated cat, the BBC Microbit can be programmed to do blinkenlights in the same way.

<comment><USER19> The LEGO boost robot kit also uses the scratch language if you want something physical and your kid is big on LEGO's.

In addition to scratch, there are a few games like "LEGO fix the factory", "lightbot jr", and even "human resource machine" (my five year old can only handle the first few levels though).

The dragon box apps are also fun if you want to give your kid exposure to algebra and geometry concepts.

For pre-5, the new Kahn app looks nice. (Our kid already knew the material by the time it came out, but still has fun with it.)

<comment><USER18> Lego Boost or WeDo is on the shortlist for an upcoming birthday present.

Boost looks more "fun" but fairly single-purpose. e.g. Some of the command are specific to one model. It seems a bit like the more modern Lego sets where pieces are complex. Cooler models but less flexibility.

WeDo is intended for schools and looks better in that there are simpler block and a more free-form goal to it. It reminds me more of the sets we probably had when we were kids - i.e. just bricks and your imagination.

<comment><USER19> Out of the box the Boost runs you through the base models with some build- specific commands. We've been through most of those builds. They also have some bases for building your own creations, and they have completely free-form programming. (Scroll to the right and tap on the swirly looking thing in a window - it's not particularly discoverable, but kids are surprisingly good at exploring all the corners of UIs.) They've also added some builds that combine other modern lego sets with boost.

I wasn't aware of WeDo, or I would have taken a look at it. I was looking for something to motorize legos and to expose my five year old to programming (if he was interested) and mindstorms seemed too complex/expensive.

It looks like boost may have more motors than WeDo (and the motors can be used as rotation sensors), 800 lego parts, some pre-designed builds (he's enjoyed the robot, cat, and truck thing). However, the "control hub" is a bit bigger on Boost (it contains two of the motors), which effects the size of things you build with it. I probably would have still chosen Boost if I'd known about WeDo.

</comment></comment></comment></comment><comment><USER20> I was 7 when my teacher introduced the Logo programming language.

We used an educational adventure game called "Crystal Rain Forest", which had a series of puzzles introducing gradually more complicated programming concepts.

Here[1] is a mid-way-through puzzle, using Logo-like[2] commands, at first interactively, then by making a simple script. The next puzzle [3] adds a "Repeat" loop.

After the game was completed, we could use the floor turtle to trace out our completed crystals [4].

I guess this [5] is the updated version.

[1] [https://youtu.be/p_DV1DGX150?t=1815](https://youtu.be/p_DV1DGX150?t=1815)

[2] [https://en.wikipedia.org/wiki/Logo_(programming_language)](https://en.wikipedia.org/wiki/Logo_\(programming_language\))

[3] [https://youtu.be/p_DV1DGX150?t=2399](https://youtu.be/p_DV1DGX150?t=2399)

[4] [https://www.youtube.com/watch?v=dy4jgTo7rfs](https://www.youtube.com/watch?v=dy4jgTo7rfs) (contains noisy children!)

[5] [https://www.youtube.com/watch?v=MHCkQC9orG0](https://www.youtube.com/watch?v=MHCkQC9orG0)

</comment><comment><USER21> I agree with the general sentiment of delaying teaching programming to young kids: what you can teach in one year to a 5 year old can be learnt in less than a week by a ~9 year old.

That said, Scratch Jr. Is interesting to connect art/story telling/scripting. Another one is Alice 3D (with adult help). For example, I played with my kids in Alice 3D where they put the characters and I, mainly, script the story including audio.

</comment><comment><USER22> I started my daughter when she was 4. I would recommend something the child can touch over abstractions. The Learning Resources Code & Go Robot Mouse Activity Set is what I started with. You setup a different maze and place the cheese on the maze. The child will program the mouse to navigate the maze using simple arrows on the top of the mouse.

I have used other toys like the game Thinkfun Rush Hour Jr get them to start thinking about how to solve problems.

If you must start with a screen, I would recommend Scratch Jr. There is a small book that has lessons building up to a project that you can use. My daughter picked up Scratch Jr after using it for about 10 minutes.

The Microsoft store in the mall had a free course for 6-8 year olds, but it is not as interesting. I think Scratch Jr is better.

I recently tried a pair exercise building a game with her using Scratch 2.0, but I think it is still too early.

</comment><comment><USER23> I am in the same boat as you, though my kids are a slightly older. Other replies here are more informative than mine, but here are a few more pointers.

NOTE: My kids have been doing hour of code, scratch on and off and they love it: [http://partners.disney.com/hour-of-code](http://partners.disney.com/hour- of-code). Sometimes kids do want to know "how does it actually work".

I have noticed that we digress quite a bit.

Here are some observations:

      1. Children learn a lot better when they are in a group (of say 4), especially with slightly older kids.

      2. Make them write down what they understood after the class.

      3. I started with the simplest computer in the whole world
     (in my opinion, not a turing machine) i.e
        cpu <---> memory model. Again, I am not an expert but thought this level of abstraction was easily digestible for them.

      4. Then explained that everything that they can do on the computer is all done by this basic computer, just faster.

      5. Then introduced them to the notion of basic programming.
         A. Computers understand only very very simple instructions, called machine instructions.
         B. We can slightly better using higher level languages.
         C. If a computer does not understand what you say, it cries like a baby. You need to get used to the different cries (error messages) and sometimes it can be very difficult.
         D. Simple instructions.
         E. I had to introduce print as a function. Actually this part was not difficult at all.
         F. I am tiered of typing things again and again: loops
         G. Hey we did that before, can we use it again? functions
         H: Sometimes we need to make decisions? if / else

      6. Familiarity with the jargon takes time and is perhaps half the battle.

      7. Our next step is to identify simple problems that are programmable.

Here is the progress so far [https://saanviperi.com/](https://saanviperi.com/)

</comment><comment><USER24> This is a bit out of left field - but I (offhandedly) showed my kid RoboHash: [https://robohash.org/](https://robohash.org/) which he thought was _awesome_. He could type in words and generate robots, which is kind of like a super power to a kid.

He asked me how it worked, and I used that to talk about some core programming concepts, including showing him some code. I wouldn't say he "learned" programming from that experience at all - but now he knows what code is, and sort of how programs are made, and he knows that you can make cool stuff like robots :)

So I would say: find something they are really interested in (maybe that's Minecraft, or robots, or animation, etc) - and use that as a jumping off point to introduce the concepts to them.

</comment><comment><USER25> Go outside and play:

[https://aeon.co/essays/children-learn-best-when-engaged- in-t...](https://aeon.co/essays/children-learn-best-when-engaged-in-the- living-world-not-on-screens)

</comment><comment><USER26> I had a lot of success with code.org's Hour of Code. First with my five-year- old, and then two classes of elementary school-aged children. It's extremely visual, introduces kids to actual code syntax, and lets the kids choose what theme most interests them. We went with Star Wars, but there are lots of other options.

Every kid will get it at a different pace. So don't stress it and just enjoy the one-on-one time. The most insightful advice I ever read was, "Even if they don't get it, you have still spent quality time with your kid."

</comment><comment><USER27> I always imagine myself how I would teach graph theory to a younger audience (middle school in my mind).

It's a good intro to 'abstract' thinking, it's visual, easy to draw, and can be use to illustrate a ton of things people deal with daily (streets, relationships on real life/twitter/facebook (bidirectional graph vs non), etc)

I think it was this[0] that made me start thinking about it

[0]: [http://jdh.hamkins.org/math-for-eight-year- olds/](http://jdh.hamkins.org/math-for-eight-year-olds/)

</comment><comment><USER28> I think the toy that first primed me for programming was a marble run construction kit. The feeling of working out where the marbles will go is very much like the one of following code through in your head.

Of course, rather than teaching me anything, it may have simply appealed to me because of a motive that was already there.

This kind of thing: [https://www.amazon.co.uk/Peradix-Marble-Run-Coaster- Set/dp/B...](https://www.amazon.co.uk/Peradix-Marble-Run-Coaster- Set/dp/B01KUXZN5I)

</comment><comment><USER29> People have recommended games geared towards programming. That's good.

Games in general are good. Even non-games like Candyland. It's all procedural. Following directions.

Back in the day it used to be all about Logo and that industrious little turtle.

What's important is that they see the results of their efforts quickly. Positive feedback for nearly as soon as they put in their commands. Eventually, they'll begin to conceptualize and think abstractly and be able to build more complex things.

</comment><comment><USER30> I bought a programmable mouse for my 4 year old daughter, she's now teaching my nearly 3 year old son to program it.

[https://www.learningresources.com/product/learning+essential...](https://www.learningresources.com/product/learning+essentials --8482-+stem+robot+mouse+coding+activity+set.do)

I only bought the mouse, you can make some mazes yourself.

<comment><USER31> It's probably worth pointing out this is more of a LOGO-esq programmable turtle rather than a "programmable gaming mouse" \- I was quite confused for a moment :)

</comment></comment><comment><USER32> Lightbot is a fun way to introduce some very basic ideas.

[http://lightbot.com/](http://lightbot.com/)

</comment><comment><USER33> Perhaps Scratch? [https://scratch.mit.edu/](https://scratch.mit.edu/)

</comment><comment><USER34> What about Robot Turtles by Dan Shapiro? [https://www.amazon.com/Think-Fun- Turtles-Coding-Preschoolers...](https://www.amazon.com/Think-Fun-Turtles- Coding- Preschoolers/dp/B00HN2BXUY/ref=sr_1_2?ie=UTF8&qid=1533650620&sr=8-2&keywords=robot+turtles)

</comment><comment><USER35> You can start with the Hour of Code, some lessons are easy to grasp for preschoolers.

There is also a nice LEGO Mindstorms game, Fix the Factory - they can learn the basic concepts, and then try to recreate them in the real world using actual Mindstorms blocks.

</comment><comment><USER36> Any pipes connecting game -- very similar skillset to casual programming. I consider most programmers digital plumbers! It's also why games like BioShock and Deus Ex have them as mini games for hacking/programming.

</comment><comment><USER37> Don't.

The best way is to let them expand their creativity and problem solving skills. Some decent puzzle books and toys will do.

Programming is just using some 'keyword' based programming languages to tell computer how to solve problems.

5-10 is a good age to expand the skills in so many fronts. Just don't limit your kids to learn some simple keywords/loop constructs etc.- which they can learn pretty quickly at any age later.

<comment><USER38> I will agree with this. I think the problem solving aspect is much more beneficial than actually programming. If you have great problem solving/critical thinking skill then converting those into some program is trivial.

I also think 5 is a little young... I'd be more afraid of turning a child off to the concept due to it being boring. My son is now 11 and they started doing some Scratch programming at school last year and he thinks it is pretty cool. It has also triggered some interest in him wondering what I do at work especially if I work from home and have something pulled up in Eclipse.

</comment></comment><comment><USER39> I started programming when I was 6 with Logo at school. Moving the turtle to where I wanted made me smile. :) At the end of the day, it's about having fun doing programming.

I would recommend the same. #Logo

</comment><comment><USER40> I've had some moderate success using Racket as a math supplement tool, but I waited for late 4th grade for a child that was already mathematically motivated.

</comment><comment><USER4> I'd wait at least 5 years. If they really want to start early, they will, with or without you. But if they don't, then don't force it.

</comment><comment><USER41> [http://pleasingfungus.com/Manufactoria/](http://pleasingfungus.com/Manufactoria/)

</comment><comment><USER42> Just give them a computer running Linux with no GUI & a copy of the Linux pocket guide, remove other distractions, and apply time.

</comment><comment><USER43> I'm still working on getting her to sit still long enough to eat dinner in a timely fashion. :)

</comment><comment><USER44> Unless your 5-year old has independently expressed interest in learning to program, I'd say the best way is to not do it. I could be way off here, but to me this smells like a parent who wants to be able to brag to other adults that their child is so smart that they started programming as a 5-year old.

</comment><comment><USER45> Don't!

<comment><USER46> While I agree. It might not hurt to explain why you think this way. For me, 5 is pretty young. At that age it might be better to focus more on building blocks that will become useful for programming in the future. Stuff like basic problem solving, identifying things that could be improved.

</comment></comment><comment><USER47> Minecraft, playing with redstone and switches

</comment><comment><USER48> Use lego mindstorm

</comment><comment><USER49> Get them to play with Legos, or help with household chores or something, explaining the process of what you are doing step by step. Try to get them thinking logically.

I couldn't even read at five years old, I certainly wouldn't have been able to make heads or tails of computer programming.

</comment><comment><USER50> The best way is to learn the fundamentals first, focus on linear algebra and calculus to have a good understanding of math. It could get a bit tiresome at first, so you could start doing some assembly programming in between to be a bit practical. The 68000 is really easy to get into.

<comment><USER51> Do you have any experience approaching these topics with a 5 year old? If so, can you share?

<comment><USER52> I don't think I could grasp basic algebra until about 14 and my classmates too XD

<comment><USER35> I think you exaggerate. My kid routinely asks me for riddles of the "x plus seven equals fourteen" kind. That's basic algebra.

<comment><USER52> I came from a family that didnt really care about school I guess, and I don't think I was even presented a problem like "x - 4 = 17" until maybe 12 years old, and I didn't understand why it was useful until 14</comment></comment></comment></comment></comment>


DukePad (Build a tablet with a RPi) - <AUTHOR> https://wiki.openjdk.java.net/display/OpenJFX/DukePad

<comment><USER2> I was at the JavaOne Technical Keynote for the demonstration and they've specifically optimized the Raspberry Pi to use the GPU for rendering the 3D graphics. Since a tablet is graphics intensive, this is why such a low-end processor seemed so performant ... it just doesn't take that much processor to handle touch events and tell the GPU what to draw or animate.

P.S. Project Sumatra was announced at last year's JavaOne and allows Java to run parallelizable code on GPUs. ([https://wiki.openjdk.java.net/display/Sumatra/Main](https://wiki.openjdk.java.net/display/Sumatra/Main))

P.P.S. The coolest interface to their chess server was a chess-playing robot, also built around a Raspberry Pi and using standard hobby servos. I believe that project will also be open-sourced. ([http://www.youtube.com/watch?v=pYLvTebauwE&feature=youtube_g...](http://www.youtube.com/watch?v=pYLvTebauwE&feature=youtube_gdata))

</comment><comment><USER3> That calculator icon looks suspiciously like it could be a rip-off of the iOS 7 calculator icon. That said, looks like a wonderful project. I'm always struggling with the best way to access a headless Raspberry Pi. If something like this were a little cheaper it'd be great.

The tablet + ethernet port combo is a great idea... Are there any Android tablets that take high speed ethernet port adapters, making them suitable as servers?

<comment><USER4> My Viewsonic G-Tablet has a 10/100 ethernet port in the dock. It also has space for a miniPCI card if you want to solder something extra on. Either way, it can saturate my crappy internet connection.

</comment></comment><comment><USER5> All I want for December Holiday Celebration Day is a touchscreen that interfaces to HDMI directly without the need for an external daughterboard.

</comment><comment><USER6> How performant is Java on the RPi? I'd like to see some videos of the DukePad in action

</comment><comment><USER7> It's still 367,55 USD and it's too much... Maybe in a couple of years all these technologies will cost less for us to make something useful out of it.

<comment><AUTHOR> Too much for what? If you want a top spec tablet, this isn't the project for you - this is about building something yourself, and to be able to do that at under $400 is something that was unimaginable a few years back.

<comment><USER8> Yeah, exactly, and you've got the flexibility to build something somewhat different than what's presented, depending on your needs or interest.

</comment></comment></comment><comment><USER8> Is Java, or JavaFX "essential" to an operational tablet, or can this table just run the default Raspbian LXDE?

<comment><USER5> Java is specific only to the interface. A cursory glance at the parts list shows nothing that wouldn't work on a Raspberry Pi in any other form factor.

</comment></comment><comment><USER9> if I'm not mistaken, you need to pay for license to use Java embedded commercially?

<comment><USER2> Today you do, but Java9 will expand the idea of the modular JRE and allow you to tailor what's included. They were pretty clear that the road forward would see JavaSE and JavaME merge into a single project with different "profiles".

</comment></comment><comment><USER10> I'd suggest using polycarbonate for the case instead of acrylic.</comment>


How we launched our Tribal Space Lounge with a tiny marketing budget - <AUTHOR> Two years ago, a friend of mine started a cafe and he asked me to help promote the place.
I finally put together a story about our little marketing campaign and the approach we took.
It focuses on this idea of picking one tiny group of people that we loved and doing what we could in the hope that they would help us champion the place.
I explain what we did to try and delight them, I've outlined some of the steps we took to put events together and what we did to keep hold of our fans.
I hope you enjoy it:
http://joshpitzalis.com/barsoom
There were many many mistakes made, but we worked with what we had and what we knew at the time. In the end we successfully launched the venue and got things started for the business. <comment><AUTHOR> Here is a clickable link to the story: [http://joshpitzalis.com/barsoom](http://joshpitzalis.com/barsoom)</comment>


Pence says European travel ban will extend to U.K. and Ireland - <AUTHOR> https://www.axios.com/trump-coronavirus-uk-ireland-a893994d-4a95-4d05-b32e-602feea0e796.html <comment><USER2> This doesn't really seem to make sense. The US already has confirmed community transmission and the suspected case rate is higher in the US the UK. Also why now? Why not 2 days ago?

<comment><USER3> The UK has _explicitly_ declared that its strategy is to let about 40 million people get it. If they hold to this, I'd be surprised if any country in the world will allow travel from there by summer.

I was part of a US/UK fellowship exchange program, emphasizing the "special relationship" between the countries. The current cohort has largely fled the UK this week, abandoning their fellowships and their degrees, knowing that this kind of travel ban would soon kick in.

<comment><USER4> It amazes me that anyone is Ok with millions of people catching a brand new virus that we know very little about.

[https://www.sciencealert.com/even-those-who-recover-from- cor...](https://www.sciencealert.com/even-those-who-recover-from-corona-can- be-left-gasping-for-breath-afterwards)

Polio, but for lungs.

<comment> grey-area They're not ok with it, it's simply seem as the best option to control spread - almost everyone in the world will be exposed to this over the next few years. Seems fairly rational to me to attempt to control that exposure given the vast majority will experience v. mild symptoms and those who are at risk will be able to stay home and get urgent care as required if it works out.

Denial is not an effective response, nor is attempting to quarantine 60 million people indefinitely, or closing schools for indefinite periods (puts more pressure on hospitals as staff need to take time off or find childcare, kids not even confirmed as a vector here).

There are certainly different possible ways to delay and different timings for implementing different measures, it will be interesting to see which is most effective in the end. Let's just hope that hospitals in most countries can cope with the strain.

<comment><USER5> > puts more pressure on hospitals as staff need to take time off or find > childcare

Yes but you can use a trick: still allow children of medical staff in schools. That what is planned in France, for now.

<comment> grey-area Sure that sounds sensible. There will be many variations on responses to this, it's too early to say which worked best.

</comment></comment></comment></comment></comment></comment><comment><USER6> I was just in the US (San Francisco) for new employee orientation and they sent us all home 1 day early because they feared something like this would happen, especially after the Europe ban came into force.

What's amusing is after returning home, I've just found out the company has basically put in WFH policy in most offices, so I'll be starting my new job....from home haha

<comment><USER7> Flights won't stop, there will still be UK citizens flying from the US to the UK, and US citizens flying from the UK to the US. In the latter case they'll have to self isolate.

<comment><USER8> Both the US and EU are discussing allowing airlines to keep their airport slots even if they don't use them. In which case, airlines will just stop flying, an aircraft is only profitable at >80% full

<comment><USER9> A few flights especially to hubs will probably remain, at prices to compensate for the lower usage. But yes, not business as usual.

</comment></comment></comment></comment><comment><USER10> Ah yes, because a virus will totally respond to some arbitrary line an old dude draws on a map.

Maybe it doesn't do animal transmission (yet), but it's already everywhere... Even it a 'ban' would help, selecting a subset of 'everyone' who already has it doesn't seem like a strategy that would work in any way, shape or form.</comment>


Corporate stereotypes, and why Microsoft could kill your startup career - <AUTHOR> http://mattswanson.org/corporate-stereotypes-and-why-microsoft-could-kill-your-startup-career/

<comment><USER2> This one is a little gem:

 _Google: The new IBM. No longer a startup culture. ... Google is huge and of course there are some startup-minded people there, but that's not the prevailing culture.

What I have seen are a lot of talented engineers who end up working on "interesting projects" that have no place in the market._

There's a reason that the high-end research is done at Berkeley/Stanford/Cornell&such and not at Flyover State College. It's where the money is. Back when, when chemistry was a thing (i.e. 1920-1990) all the major players (ICI, BASF, Merck) had basic research departments whose output might or might not turn out to be profitable eventually. Oftentimes it was. You need deep pockets and a long time horizon to run blue-sky research, which at times is surprisingly profitable.

These VC types hawking money to green kids fresh out of college thinking their webapp is the next Google are just the pox on Earth. BASF's _Zentralforschung_ and ICI's Frythe have done more good than this type ever will.</comment>


Code robots in Python. Fight other players. Climb to the top - <AUTHOR> http://robotgame.org/ <comment><USER2> This isn't specifically about this implementation, but I've noticed perhaps almost ten similar projects (virtual, programmed PCROBOTS descendants) on HN over the past year. There seems to be a real interest in this area (I made one myself on a hack day a few years ago ;-)) but a lot of reinventing the wheel.

Are there are any particularly popular open source projects of this sort that people interested in this area could perhaps collaborate around?

<comment><USER3> The Urgame for this seems to be RobotWar:

[http://en.wikipedia.org/wiki/RobotWar](http://en.wikipedia.org/wiki/RobotWar)

Which I'm aware of because it inspired Robot Battle:

[http://www.robotbattle.com/](http://www.robotbattle.com/)

Which inspired RoboCode:

[http://robocode.sourceforge.net/](http://robocode.sourceforge.net/)

Which seems to have inspired a lot of others.

(Reads a bit like the Old Testament; all that begetting.)

One problem is that almost all of them are language-specific. Robot Battle implemented its own language, RoboCode uses Java, this game is in Python.

One game in the genre is RealTimeBattle, which instead allows bots to communicate with the game simulator via standard IPC. So, in theory, robot programs can be written in a variety of languages.

[http://realtimebattle.sourceforge.net/](http://realtimebattle.sourceforge.net/)

<comment><USER4> The ideal language-agnostic "robot wars" engine would prob involve just passing structured text messages over a socket via TCP. Then the robot's logic can be written in anything, as long as it could do sockets (which almost every language/stdlib/runtime/OS you care about can do already), and, could be running remotely or locally.

<comment><USER5> Yeah, but it doesn't really seem to fit this particular format, in that this one is sort of an "idempotent" method where you submit your code and the results are calculated deterministically by the server. The other way would require something to be compiled and run on the clients' individual machines. It'd be nice to not have to install any libraries or worry about connecting to a server at the "right" time.

<comment><USER3> Depending on the format, it's not idempotent. Most such games include some random elements, such as starting positions, "energy cookies" and so on.

But you're right that a more agnostic system makes submission to a server trickier for the server.

</comment></comment></comment></comment></comment><comment><USER6> Every year the UofI ACM puts on an AI programming game competition. I've competed and worked on the 2012 game, its a lot of fun. If you're a student or corp in the midwest, take a trip down in October. And the game is usually language agnostic.

Did I mention there's also a whole conference with a bunch of tech talks, student parties, etc?

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

<comment><USER7> I-L-L!

</comment></comment><comment><USER8> My first thought went to [http://aichallenge.org/](http://aichallenge.org/) it's a shame there is still no new competition.

<comment><USER9> I saw AI Challenge earlier! It looks really fun. I might steal one of their ideas and of put five or so teams of robots in a bigger map and see what happens.

</comment></comment><comment><USER10> This is how we should teach kids programming; the goal is simple, the API is simple and they can play against their friends... This has got me thinking...

<comment><USER11> The intro to programming class I took at CMU (Fall of '05) was pretty much this. We learned Java using a robot simulator. It was based on Karel the Robot, adapted for Java: [http://www.amazon.com/Karel-Robot-Introduction- Object-Orient...](http://www.amazon.com/Karel-Robot-Introduction-Object- Oriented-Programming/dp/0970579519/)

</comment></comment><comment><USER12> Heh this reminds me of a game I wrote a while back, also python: [https://github.com/phreeza/cells](https://github.com/phreeza/cells) In fact I would guess the API is perhaps inspired by the cells API.

Writing a web frontend is something I have been wanting to do for this a long time, nice to see someone implement that!

<comment><USER13> I really wanted to play with that, but it ran far too slowly without PyGame, and I couldn't get PyGame to run on my mac, so I abandoned it :/

<comment><USER12> Thats a shame, if I recall correctly for me it was trivial to set up with macports.

</comment></comment></comment><comment><USER10> It seems a large part of the previous discussion surrounded sandboxing Python; anyone know where the author is with that? I find it hard to believe it would be very hard if you just embed the players game in a C++ engine.

<comment><USER9> Well, it turns out you can't sandbox Python at the language level. So now each user's code is run (a) in a separate process (b) in a chroot jail (c) as user nobody (d) with umask set to 0 (e) with a time limit of 300ms.

<comment><USER14> Have you experimented with using linux's cgroups for real security? (e.g. you can white/black-list specific syscalls, set time & memory limits etc, all at the kernel level)

Example sandbox: [https://github.com/thestinger/playpen](https://github.com/thestinger/playpen)

</comment></comment></comment><comment><USER15> previous discussion thread (3 weeks ago) [https://news.ycombinator.com/item?id=6656419](https://news.ycombinator.com/item?id=6656419)

<comment><USER16> in this case, the author iterated significantly since the last post, now there's an online code editor, and it's easy to try out

</comment></comment><comment><USER17> This also quite interesting programming game, which allows several optimizations. [http://aichallenge.org/](http://aichallenge.org/) I also used to play Omega Tank, but it wasn't as good as it could have been. [https://en.wikipedia.org/wiki/Omega_%28video_game%29](https://en.wikipedia.org/wiki/Omega_%28video_game%29)

</comment><comment><USER18> [http://www.hacker.org/bitbath/](http://www.hacker.org/bitbath/) is a really nice one in Java.

And this one is ok, [http://berlin-ai.com/](http://berlin-ai.com/) \- you just provide the URL of your AI and they POST game states to you, and you have 5 seconds to reply with your orders.

</comment><comment><USER19> I always get a maximum recursion depth exceeded exception in game.py using the rgkit. The exceptions aren't very helpful and only point to problems in the runner, not the bot. I'm not even sure what is triggering it. The only rg method I'm using is locs_around.

<comment><USER19> Seems to happen whenever I use locs_around. I think I'll replace that method with my own. Half my robots are guarding because this function is hitting recursion limits every god damn time.

<comment><USER9> Some other people have been having the same problem as well. If you can email your robot id to email@example.com, I'll try to see what the matter is.

</comment></comment></comment><comment><USER20> Why python? The API could have been a simple textual one (or maybe JSON, or whatever) and piped to/from the robot programs. That way, robots could be written in whatever language the authors like. It would also help sandbox the robots from the game server.

<comment><USER21> My guess is one of the project's goals it to reach programming. If that is the case, Python is a great language.

If the goal was simply to make fighting robots, something more agnostic would be cool. That said, the system enforces a 300ms response time per robot, so compiled languages would have a big advantage.

</comment></comment><comment><USER22> Reminds me of the C++Robots "King of the Hill" competition:

[http://www.gamerz.net/c++robots/](http://www.gamerz.net/c++robots/)

I've still got two robots in the top ten there, and another just outside.

</comment><comment><USER23> Not sure what I'm doing wrong, but nearly every robot I write compiles, and then does nothing when run.

The only time I got it to do something else was by taking the sample code, raw copy-pasting it in, and running that.

</comment><comment><USER24> This would be better if there were more in-depth docs. I want to know if my a bot is on my team? But how? Let's check the docs..oh wait..they're incomplete.

Promising but not ready yet.

<comment><USER9> Yeah, I do need to make the docs friendlier. As for your question, though:

        if bot.player_id == self.player_id:
            # they're on your team!

</comment></comment><comment><USER25> Anybody aware of a similar game to ~teach~ python? I remember seeing a thread that used a war game to teach java, was hoping there's one for python too cheers

</comment><comment><USER26> Please use <title> so I can tell the tabs apart.

<comment><USER9> Good idea, thanks for the suggestion.

</comment></comment><comment><USER27> Down now.

<comment><AUTHOR> Looks like it's back up!</comment></comment>


The Pixel C was probably never supposed to run Android - <AUTHOR> http://arstechnica.com/gadgets/2015/12/the-pixel-cs-bumpy-road-from-chrome-os-concept-to-android-adoptee/ <comment><USER3> Fascinating story, and explains why the product is so odd and rushed.

It raises the question: why did this ship at all? Why waste marketing dollars, muddle your overall branding/product lines (Nexus vs. Pixel), and compete with your own existing products (Nexus 9)?

Microsoft canceled the Surface Mini at the last minute, because it was clear that WinRT had no future. Once the touchscreen Chrome OS got canceled, the Pixel C should have been too.

<comment><USER4> Perhaps there were contracts with manufacturers that would have been more expensive to back out of at the last minute. It's also hugely demoralizing to a team to work on something for a couple years and then see it never ship because of mismanagement many levels above them. They probably ran the numbers and saw it was cheaper to pay X million to ship a shoddy device vs. a greater Y million to back out of contracts, perhaps lose team members in frustration, etc.

See also: Microsoft's Kin phone that actually shipped and was discontinued 48 days later.

<comment><USER5> Well the results are... this was likely the best way they could put a knife in ChromeOS as a platform.

<comment><USER6> Huh? In the AMA they hinted that the thing can boot other OSes.

Whatever the convergence plan is, Pixel C is the test hardware. The bootloader bits are in the ChromeOS tree. It uses Coreboot.

It's a ChromeOS device and I suspect it's future will include a return to its roots.

ARC in Chrome will be a better way forward for Android than trying to fix all of Android's insidious problems on the "desktop" and making mobile Chrome more fully featured. It just seems painfully obvious that Chrome is going to win.

It's better tech all around.

<comment><USER7> If so, I guess this would be a fantastic machine for running Linux ARM.

<comment><USER8> This (well, *BSD) is what I'm interested in. It'll be interesting to hear from the Linux/BSD pioneers what the networking, gfx, and touchscreen support are.

[edit: insertspace]

<comment><USER7> Except for the slightly odd keyboard (e.g. no Esc), this could be a fantastic machine for a keyboard driven setup.

That's how I use my MBA 11''. XMonad, mutt and friends.

But this one could be better.

<comment><USER9> At least the MBA is a clamshell. This I could not imagine working on.... Why didn't they just do a Nvidia X1 Chromebook.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER10> Why can't Android run a full blown Chrome browser able to run the web versions of Docs and Sheets?

I need a cheap and lightweight computer with a keyboard for work traveling and personal use. I now use an iPad with a logitech bluetooth keyboard, but it is not ideal. The main problem is that it cannot run the full version of Google Sheets (with filters), which I need for work. There are many other problems, as iOS does not support keyboards well (even though it is improving).

Furthermore, I now own an Android smartphone, which I like, thus an Android tablet with a keyboard would be ideal.

The Pixel C seemed perfect. The keyboard is very nice and it runs Android. I thought that, being a Google product, it would be able to run the web versions of Google Docs and Sheets. But it can't.

The alternative is a Chromebook. But I would like to run some Android apps which I already own. A computer that can only run a browser is too limited.

This brings me to my question: why can't an Android tablet with 2GB of RAM run a full Chrome experience? If it could, the pixel would be much better than a Chromebook, at least for me.

<comment><USER11> >The alternative is a Chromebook. But I would like to run some Android apps which I already own.

I don't know the details, but it sounds like Chromebooks can now run Android apps: [https://support.google.com/chromebook/answer/6088175?hl=en](https://support.google.com/chromebook/answer/6088175?hl=en)

Maybe that's only Android apps that have been "ported" and placed in the Chromebook app store though.

<comment><USER10> As you mention, just a few apps have been ported. It seems quite experimental and it also seems that at Google the tide now flows the other way. Are we heading towards the inclusion of Chrome to Android?

My question is: what prevents including a full featured Chrome browser in Android devices with more than 2GB of RAM? If Google wants to position Android as a productivity OS, Android should at least support the full versions of Google's productivity tools, and today this means supporting the web versions.

</comment></comment></comment><comment><USER12> Google definitely needs someone to step up as a gatekeeper and say 'No, this product is terrible, go make it better and we can think about a release'.

</comment><comment><USER13> The Asus Chromebook Flip works great as a ChromeOS 'tablet' \- just assuming that you use it in laptop mode 90% and tablet 10% of the time.

Trying to use ChromeOS 90% of the time in tablet mode just isnt going to work

Should of gone with a slimmed down Pixel with a flip or slide keyboard (with trackpad) - that wold of been awesome and actually make sense

Pixel C doesnt work

Anyone whose tried to use Android as a laptop replacement - with keyboard etc.. knows the pain - Android doesn't work as a 'work' device/laptop - <USER2> it would but it currently just doesnt :(

<comment><USER14> What are the main pain points of using android with a keyboard? People have mentioned not having split screen, however IOs just got that a fee months ago, and people used it with keyboards Lal the time before that.

<comment><USER15> Mostly slow application switching on my case. It's significantly better than on iPad due to OS having better keyboard support (yes, even the Pro keyboard is awful to use), but it doesn't really compare to proper desktops.

</comment></comment></comment><comment><USER16> I think this article is very fair and probably on the money. The Pixel C is a tablet I really, really want to like but the fact that Android is very ill suited to being a tablet OS plus the fact that the keyboard connects via bluetooth (and, as they always do, suffers from input issues as most reviewers have pointed out) is just a bad idea.

One thing to point out however is this article and many others continue to say how odd it is for the Pixel team to develop Android hardware but I think many forget that Google positions Pixel hardware as hardware designed and manufactured in-house versus Nexus which has hardware designed and manufactured through partners. The Pixel C did a reddit AMA just two days ago and one of the answers made this distinction [https://www.reddit.com/r/IAmA/comments/3w3x7p/hi_im_andrew_h...](https://www.reddit.com/r/IAmA/comments/3w3x7p/hi_im_andrew_here_at_google_and_im_with_the_team/)

Though I'll admit that distinction isn't always black and white considering things like the Nexus Player.

<comment><USER17> I'm curious what the top-voted and now "deleted/removed" thread used to be in that Reddit discussion, and who nuked it.

<comment><USER18> [https://web.archive.org/web/20151210170144/https://www.reddi...](https://web.archive.org/web/20151210170144/https://www.reddit.com/r/IAmA/comments/3w3x7p/hi_im_andrew_here_at_google_and_im_with_the_team/)

Deleted for not being a question I guess.

</comment></comment></comment><comment><USER19> I love git archaeology when I'm in the organization producing the commits, but it's even cooler as a window in from the outside.

</comment><comment><USER20> About the keyboard being hidden behind a developer flag - actually it looks like the keyboard that pops up when using the ChromeOS accessibility options. Handy when interacting with the device from a distance with only a pointing device.

</comment><comment><USER21> I m highly interested in Pixel C, is there any hack to install ubuntu on it til now?

<comment><USER14> Since it is Core boot and all open source drivers, I imagine it won't be hard. However given it's just started shipping, I don't think anybody have much experience with it yet.

It is interesting how a community that's probably installed their own software on their hardware for the last 20 years, suddently care so much about if it ships with one or another open source operating system.

<comment><USER22> Coreboot isn't the issue. You need a payload for Coreboot. For x86 architecture, people use Seabios, but that won't work with the Pixel C, because it's ARM based.

Some people suggest you might be able to get Tianocore working, but I've no experience with that (I'm running Xubuntu on a modified HP Chromebook 14). ArchLinux has a Samsung Chromebook guide - [https://wiki.archlinux.org/index.php/Samsung_Chromebook_(ARM...](https://wiki.archlinux.org/index.php/Samsung_Chromebook_\(ARM\)). So it might still be possible with a lot of effort.

[Source]([https://plus.google.com/115981076197658979302/posts/2QXBZ16G...](https://plus.google.com/115981076197658979302/posts/2QXBZ16GY4v)).

Incidentally about your closing comment - when PCs were towers it was a simpler matter to install your own operating system and make sure you choose compatible parts. It becomes a lot more difficult when they're pre-packaged laptops - you can't really build one yourself. Google doesn't want you to switch away from ChromeOS because their business model centres around their apps (Google Drive, etc.) and ads for their searches. So that's why people have started caring about whether it can run a certain OS easily.

</comment></comment></comment><comment><USER23> John Gruber will get a huge kick out of this.

<comment><USER24> Already has:

[http://daringfireball.net/linked/2015/12/10/reddit-google- pi...](http://daringfireball.net/linked/2015/12/10/reddit-google-pixel-c)

<comment><USER25> And, yet, not a single mention of the iPhone hunchback battery debacle. I enjoy reading Gruber's blog, but his bias is ridiculous.

<comment><USER26> He takes a while to address/spin Apple debacles. Maybe there'll be something on Monday.

I've found it more interesting that Gruber has been directly critical of Apple lately. When even Gruber says "If this hasn't set off alarm bells within Apple, something is very wrong", then something is _very_ very wrong: [http://daringfireball.net/linked/2015/12/01/sketch-leaves- ma...](http://daringfireball.net/linked/2015/12/01/sketch-leaves-mac-app- store)

<comment><USER27> You have to read carefully to find critical opinions on his blog. Another one where he had to admit the sneaky choice of a 16 to 64gb storage (for obvious $$ reasons).

"But I don't understand why the entry level storage tier remained at a meager 16 GB. That seems downright punitive given how big panoramic photos and slo-mo HD videos are, and it sticks out like a sore thumb when you look at the three storage tiers together: 32/64/128 looks natural; 16/64/128 looks like a mistake. The original iPhone, seven years and eight product generations ago, had an 8 GB storage tier. The entry-level iPhones 6 are 50 times faster than that original iPhone, but have only twice the storage capacity. That's just wrong. This is the single-most disappointing aspect of the new phones."

[http://daringfireball.net/2014/09/the_iphones_6](http://daringfireball.net/2014/09/the_iphones_6)

</comment></comment></comment></comment></comment><comment><USER28> Android and Chrome unification wasn't ready yet, but the hardware platform was.

Google IO 2016 will be interesting.

</comment><comment><USER29> I bet the android fork, remix OS would run great on it!</comment>


Ask HN: iPhone optimized HN site? - <AUTHOR>

Find myself checking in from my iPhone quite a bit. Im wondering if an iPhone optimized HN site exist. <comment><USER2> Maybe this should be added to the FAQ. There have been a lot of posts recently about this.

</comment><comment><USER3> <http://www.icombinator.net/>

<comment><AUTHOR> Thanks!!</comment></comment>


Disney's movie dominance has a dark side, independent theatre warns - cirrus-clouds https://www.cbc.ca/news/canada/british-columbia/disney-the-last-jedi-rules-movies-1.4455305 <comment><USER2> The studios once owned the theaters. That's why you see old "Warner" and "Paramount" theaters in some big cities. That monopoly was broken by an antitrust lawsuit by the Syufy chain, which, among other things, built the domed theaters seen around Silicon Valley.

With antitrust enforcement so weak today, Disney could probably buy theaters. They probably wouldn't. The margins are not very good.

The Marvel Overextended Universe looks tired. Star [Wars|Gate|Trek] has been done to death. Coming up from Disney: another Winnie the Pooh movie, another Wreck-It Ralph movie, another Mary Poppins movie, another Aladdin movie, another Toy Story Movie, another Avengers movie, another Lion King movie, another Frozen movie... Disney used to have an official Crap Sequels Division called Disneytoons, which cranked out Cinderella 2, Lion King 2, Mulan 2, and other direct to the DVD bargain bin products. Disneytoons was supposedly shut down after the Pixar acquisition, but the Disneytoons sequel mania seems to have taken over the company.

They're in a rut in beautiful downtown Burbank.

<comment><USER3> The Marvel Overextended Universe movies are as sterile as still packaged surgeon gloves. But that's what people want. Not even infinite repetition of the same scenes, a grape colored CGI villain with a ludicrous motivation and inconsequential, pointless battles where no one loses or wins can kill audience interest. They are like those quick time event games, without the quicktime events.

<comment><USER4> I actually liked Infinity War for breaking the formula. In the end, the antagonist won and half the universe died. They didn't pull out a last ditch win using the power of friendship or childhood promises from flashbacks or other such cliches.

Of course, this will all be subverted when the sequel comes out, but I can at least enjoy it for now.

<comment><USER5> That was the first Marvel movie that I actually liked in a long long time - <AUTHOR> felt like it had some weight to its scenes, it wasn't peppered with idiotic, unnecessary jokes every 30 seconds(looking at you Thor&Gotg2), and the antagonist had an understandable and well thought out goal, not just "I want to kill everyone because I'm evil lol". The only other Marvel movie that had a decent antagonist was Spider Man: Homecoming - it wasn't some evil being from outer space, but a normal dude who lost his income and wanted to provide for his family, that was actually relatable, even if his methods weren't.

Like you said, the sequel to Infinity War will probably undo this and be disappointing in comparison, but I'm enjoying what we got.

<comment><USER6> The Joss Whedon inspired comedy is great for many of us. I loved Taika Waititi's take on Thor, especially compared to the first one, as did most other people. And it's sitting on 7.9 on IMDB, which is pretty much a resounding "Wow". If you loved Thor Ragnarok, watch Hunt for the Wilderpeople, it's a real indie gem and you can play spot the Ragnarok actors.

Also Chris Hemsworth's comic timing is great, he was a real highlight in Ghostbusters too. It reminds me of Ryan Gosling in the Nice Guys, a rare surprise that an actor can do comedy too that you weren't expecting.

As for Marvel baddies, yes, I generally agree with you. Their best baddies have been in the TV shows, namely Wilson Fisk's Kingpin and David Tennant's Kilgrave.

<comment><USER7> I thought the first Thor movie was the better one of the Marvel movies, perhaps it was because of Kenneth Branagh's influence, and his experience with Shakespeare; he did the family conflict in Asgard quite well.

</comment></comment></comment></comment></comment></comment><comment><USER8> As someone who doesn't like the Marvel movies and is losing interest in Star Wars it feels like the are fewer movies for me to enjoy in the cinema than there was even just a year ago. There were times my wife and I went to the cinema twice on one weekend because there was so much stuff we wanted to see. This year we've watched Isle of Dogs. Before that was Three Billboards Outside Ebbing Missouri which was in December. Last summer we had Dunkirk, Babydriver and shortly after the new Blade Runner. This year everything seems dominated by Marvel and SatWars. Even upcoming movies on IMDb look bleak to me.

<comment><USER9> Spare a thought for those of us in developing countries. I can now watch the latest Marvel or Star Wars blockbuster in 3D as soon as it is available in western markets, but little else. Many of the films you mention never saw the light of day in my neck of the woods and the Disney et al titles seem to stay forever, where I live Infinity War is still being screened.

<comment><USER10> Same here in my poor country. It's either superhero or ultra-action movies or nothing. I still dream to watch a nice drama movie in a cinema.

<comment><USER11> This is why we have cheap big-screen TVs now: you can just watch this stuff in the comfort of your own home, and not have to deal with: sticky floors, overpriced and unhealthy concessions, screaming children, conversing or texting viewers, inability to pause to go to the bathroom, etc.

</comment></comment></comment></comment><comment><USER12> I don't mean to be glib, but is there a positive side? I mean, I know it is positive to the share holders, but what benefit does Mega-Disney have for the regular person? Regular-Disney got us the 95 year copyright, so the public doesn't need any more Disney power.

<comment> crooked-v Well, Disney power did get us not-unequivocably-bad Star Wars sequels, though I think there's an argument to be made there that a megacorporation was only needed for that because megacorporations had pushed the extension of copyright terms so far in the first place.

<comment><USER13> My opinion is that Disney got us rather simplistic and formulaic fan fiction sequels with overblown visual effects, while treading all over the real thing (the SW Expanded Universe).

While the stories from the EU were of varying quality, at least they were interesting. These Disney sequels are so predictable and uninteresting it's not even funny.

Fortunately, each of us gets to pick their own canon. For me, it will always be books by Timothy Zahn, and Disney can't do anything at all to the physical copies that I have on my shelf.

<comment><USER14> I have mixed feelings about the Last Jedi, but it definitely wasn't predictable.

<comment><USER13> Maybe not in the individual plot elements, but the entire movie felt like they were checking off items from a list, and that they were fully aware that the movie is merely a fuel for the merchandise money machine . It was more or less just as naive and fairytale-y as the old Episode 4, and had exactly the right elements to make children go "ooooh" and "aaaaah" (and to pester their parents to buy them toys), and adults cringe.

Which by itself is fine, I guess, but there wasn't any depth in it beyond the effects' wow factor.

</comment></comment></comment></comment></comment><comment><USER15> Disney pretty much killed the Star Wars franchise by making "best of" remixes and putting people in charge who seem to be tone deaf and/or actually despise the originals. Several fans I know have sworn off seeing another one after seeing The Last Jedi. It's gotten so bad that even Disney has noticed and they've paused production of future installments.

This is exactly the kind of movies you would expect to be created by a vast entertainment conglomerate that is too big to fail.

The industry is greatly in need of a shake up.

<comment><USER16> IMO anyone that was going to make a set of Star Wars sequels was doomed to fail. The originals hold such a specific place in people's childhood memories that any resurrection will always be considered sacrilege.

I didn't see any of the Star Wars movies until I was in my twenties, and I think the new movies are absolutely fine. Nothing earth shattering, but _neither were the originals_.

<comment><USER17> The two arguments I've seen laid against the sequels are either vague rants about "SJW propaganda" or that they're disgracing the originals, _especially_ the characters, by deconstructing and recontextualizing them.

And it's unfortunate because what they seem to object to is taking risks with the material. They only want the EU on screen, nothing else. I'm as old as the franchise and I _want_ to see something new done with the universe. Don't pander to the old guard, challenge them and undermine their expectations.

<comment><USER18> TLJ is an objectively bad movie, politics and nostalgia aside. It's absolutely littered with plot problems.

<comment><USER19> TLJ is not an "objectively bad movie". It's currently sitting at 91% on Rotten Tomatoes, which means that objectively speaking, 91% of people paid to watch movies for a living thought it was worth watching, compared to all the other movies that they have to sit through.

There are certainly plotting issues, like the entire detour to the gambling planet. But there aren't any major _plot holes_. (The hyperdrive kamikaze attack is brought up as a big one--but closer examination shows why it isn't a plot problem and why hyperdrive torpedoes aren't a thing in SW. The attack actually fails to destroy its target--it merely slices through it. It only succeeds in causing any sort of meaningful damage because the NR's ship is so massive, which rules it out as a weapon of general use.)

</comment></comment></comment></comment></comment><comment><USER20> These days it seems movie making is about taking the least risk. Most if not all the big budget flicks are either fantasy/scifi or reboots of old franchises or superhero movies or a combination of them. There seems to be a lack of a tight script and good storytelling. The last movie which was not a marvel/dino/superhero genre and enticed me to watch in the theatre was "gone girl". I wish we see more of those movies again.

<comment><USER21> I agree with your point but I also want to point out that if you think about the ratio of money you spend on franchise movies vs. other movies, even the people that like to complain (not accusing you of complaining) are often at fault.

I know personally that I see just about every Marvel movie in theaters, but for any no-big-name movie, I wait until I can see it on Netflix or just never see it at all. I cannot complain without being a hypocrite.

<comment><USER20> I see your point (I myself have seen most the marvel movies in the theatre). But I think if the movie is good, people would be willing to go to the theatre to watch. "Get out" is a good recent example.

</comment></comment></comment><comment><USER22> I just want to recommend people read the Alvin Toffler quadrilogy as he described decades ago the changes that would take place due to technology.

In The Third Wave he provides a historical context and background for the evolution of technology and it's impact on society; In Future Shock he talks about the growing pains as technology enables the individual to do things the group (government, education, business) could only do before; In Powershift he discusses the shift in power from those at the top to the individual; In Revolutionary Wealth he discusses the new producer-consumer business models.

If you look at social media and businesses such as YouTube, Kickstarter and Patreon they are the future, and traditional businesses can only survive by embracing and capitalizing on their value to these new models, or by clinging to the old models as they die off which means Disney buying up as much content as possible as distribution costs drop and channels approach infinity. They are trying to lock up as much popular content as they can for the built in audience and brand because they are a goliath that can't compete with an army of Davids.

This has all happened before, all you have to do is look at the history of print, live performances, radio, television, cable, even web portals. It's a predictable cycle of growth and consolidation with an existing system as it spawns new systems independent of but predicated upon the systems that came before it. Marshall McLuhan spoke a lot about such things as well as Neil Postman.

</comment><comment><USER23> Movies have always been bad. Always. Look at how many movies are made in Hollywood each year. Hundreds and hundreds. Maybe 10 each year are worth the time to watch. Maybe 1 will end up having enduring value. The rest just disappear.

Tropes get recycled, new genres come and go, are rediscovered, and then fade. Formula has always been important in cranking out the volume of productions. The odds are stacked against any one movie being a success, either critically or financially. Who would have thought that Spielberg would follow up Jurassic Park with such a stinker?

The studio system was no ideal world; actors were stuck in their contracts and had horrible bargaining power. Censorship was the norm, writers were not given much leeway. Today's movie industry is far healthier, with more outlets, more customers, and more opportunities.

The problem today isn't on the distribution side, but on the production side. Creating a movie is just so expensive. Same problem facing the video game industry. Think you can create a movie for $4M? That's the inflation adjusted budget for American Graffiti. Or Star Wars at $47M. Not a chance. The FX alone would probably cost that. Rogue One was over $200M...

</comment><comment><USER24> Whenever I see a movie synopsis that contains "zombies", "murder", "detective", "race against time", I just move on.

</comment><comment><USER25> Maybe movie theatres will become extinct, and Disney will have to funnel their unoriginal, sterile, monotonous, CGI-based movies exclusively through their competitive streaming platform to Netflix, thus allowing people to choose to either watch an independent movie, or a blockbuster, or another type of movie, without forcing business owners to do anything.

Despite my love for movie theatres and the feel good sensation they used to provide me in the past, they have moved away from this and the experience has become less enjoyable than an actual home watch. The endless amount of brainwashing commercials prior to the actual movie when going to the theatre is only one of the problems. The lack of choice in movies is another.

One can hope that theatres will first become extinct because of streaming platforms coming up, then will get reborn as proper theatre with a renewed purpose of showing movies rather than brainwashing people with commercials, force-feeding them that Deutsche Bank is a great bank for their next mortgage, and having them waste their money on 10 EUR nachos/soda bundles, etc...

</comment><comment><USER26> Utterly ignoring the content of disney/marvel movies for this post...what is the proper response to this problem?

Theatres that just elect to follow the requirements lose money if they are small markets. Theaters that refuse the requirements also lose money. Consumers dont get to make the choice, and suffer only variations of the consequences. (I may be annoyed that nothing else is showing, or I may be annoyed that I have to go to another theater to see what I want, but DISNEY isnt likely to be impacted by how my theaters decision impacts me.

What is the proper response here? And not just here...if Pepsi and Coke both incentivise exclusive contracts, they aren't the ones to suffer if my favorite restaurant goes with the one I prefer least. Etc.</comment>


New evidence supporting the existence of the hypothetic X17 particle - <AUTHOR> https://arxiv.org/abs/1910.10459 <comment><USER2> It seems strange at first that a particle with a mass of 17 MeV (much less than a proton) would have gone unnoticed, but the particle they describe is protophobic, that is, it doesn't couple to protons, so it wouldn't show up in p-p accelerator experiments.

In nucleon interactions you would have neutrons around which would interact with protophobic particles.

What I still don't get is why the X17 doesn't show up in e-e colliders. (An X boson couples to both leptons and quarks, which is why it can contribute to proton decay)

A protophobic X boson would not contribute to proton decay which could explain why proton decay is not observed.</comment>


Restraint - <AUTHOR> http://www.usabilitypost.com/2009/10/02/restraint/ <comment><USER2> I'm interested in the contrast between Flickr and the portfolio sites. I believe (I may be mistaken) Flickr restrained itself in order to allow the photos to be the dominant visual element.

I understand why the portfolio sites are overly designed. It's a quick way to scream, "Hey, we're for designers!" It's more for designers learning from other designers than as a showcase to non-designers.

Flickr is more about the mass market consuming beautiful photos, so that is different. It's interesting that Virb (<http://www.virb.com>) aims kind of in the middle, and its design is kind of in the middle.

<comment><USER3> virb has horrible design though. The exact opposite of artful well thought out design. Pastels and rounded buttons do not make "design".

Restraint would be writing fewer blog posts, thinking more. When you have a careful, tested, well thought out idea, presenting that to the world.

</comment></comment><comment><USER4> But which is easier to type on, the iPhone or the BlackBerry? I realize I'm just taking one of his example, but simple design is not always the most functional. Devices should definitely have no _unnecessary_ interface or design elements, but there are differing opinions on what is necessary. I really can't imagine typing lots of text messages on a touch screen.

<comment><USER5> I've gotten quite good at typing on the iPhone. I used to write my girlfriend all of my "Love emails" from my desktop at work. Now I write them all from the iPhone on the plane. 2 or 3 large paragraphs are not a problem, once you get the hang of it. That said, I don't think typing on the iPhone is for everyone. I think UI programmers and programmers and engineers in general will tend to be better at it. We know how to be "nice" to machines.

<comment><USER6> i'm going to agree with this. i don't do a whole lot of typing on my iphone, because i use it mostly for content consumption, rather than creation. but when i do need to type on it, i don't find that to be a problem.

i especially like how it can have a whole bunch of different keyboards: one optimized for url entry, one for general text, one for phone numbers, one for japanese, and so on. a hardware keyboard feels obsolete the second it's produced, which is the same way i feel about paper printouts these days.

<comment><USER4> That is an excellent point about optimized keyboards.</comment></comment></comment></comment>


MDS / Zombieload Mitigations Come at a Real Cost, Even Keeping Hyper Threading - <AUTHOR> https://www.phoronix.com/scan.php?page=news_item&px=MDS-Zombieload-Initial-Impact <comment><USER2> ScyllaDB's take: [https://news.ycombinator.com/item?id=19941425](https://news.ycombinator.com/item?id=19941425)</comment>