Hacker News new | past | comments | ask | show | jobs | submit | more fairpx's comments login

Was wondering the same thing. tnx for the perspective


Audiobooks. For me there's no better way to take my mind off the journey than that. Mostly on the topic of business or what ever specific thing I'm working on at that moment. Audiobooks and a notebook to scribble down ideas and learning is such a brain booster.


I'm torn about all of these types of apps. On one hand, I think it's great to invite people into the world of coding and doing so in a user friendly matter. No doubt Grasshopper and a handful of similar apps are well designed, but is it really the right way to go about things?

I remember vividly learning to code at age 11. I had an old computer, windows would constantly crash and the only thing I could access really was QBASIC.

Alongside a book with code snippets, I would simply write a line of code, hit run and see what happens. Then, go back to the code and 'go rogue' (meaning: change the numbers a bit and make the line 5pixels instead of 2 for example). This is where the magic happened, because I actually coded something. It wasn't part of an educational application, it was the real deal inside the real editor with a real output.

The learning always came from trial and error and in a way is very similar to how I still code things (when I'm not designing SaaS products for awesome B2B companies)

The book might be replaced with Google & Stackoverflow, but the principles are the same.

The magic of coding, I believe is in writing something that is real.


Great thoughts! I completely agree that learning to code is a lot about trial and error. One of key things that we decided to do with Grasshopper is make it possible for people to write real code, but on their phones. From the very beginning, it's possible for users to "go off the rails" and write code, run it, and see what happens. We didn't want to do fill-in-the-blank stuff, since there's only one right answer. We constrain the code editing environment to be relevant to the puzzle at hand, but that's mostly so we don't overwhelm beginners.

We also have a Playground (available in the left-hand menu) where users can just play around using the Grasshopper coding environment.

Would love to keep getting your feedback on how we can make everything more real and keep that magic. :)


I think it's an important signal that in every thread like this rather than say "wow, I wish I had something like grasshopper when I was a kid", we start waxing nostalgic about QBASIC. (I'm right there with you btw).

A lot of us grew up learning with tools, not toys (except you, logowriter, you're cool). Then we went and made the tools totally unapproachable. So now kids get the opposite approach: toys, not tools.

Teaching software like grasshopper is an experiment, and we're about to see the results. The first version of Scratch came out in 2003. Obviously this is super fuzzy, but for the sake of argument call 2003 the border between the QBASIC/getting a Sam's teach yourself C book at B&N era and the Scratch era. So a hypothetical 8 year old who started learning with scratch in 2003 is now 23 years old. The kids who grew up on this stuff are about to start showing up in adult life, and it'll be interesting to see how they turn out.


FYI, the first public release of Scratch was in 2007 [1], so that's really a more accurate border. I'm aware of this because I started using Scratch in 2008. I'm a computer science student in college now, and I've had a couple of internships. From my experience, Scratch was a great start. I learned a lot from it, and I really credit it with getting me into the field, although I likely would have irregardless of Scratch. Either way, I don't think that it necessarily will be bad for toys to replace tools.

[1]: https://web.archive.org/web/20070120041500/http://scratch.mi...


That’s really encouraging to hear. Thanks for correcting the date, too.

Something I’ve been thinking about since posting: imagine yourself in a sort of Victorian/steampunk world that runs on gears etc. What would you give young people to start getting them literate in the machines?

I figure it would be a toy: something like a meccano set. You’d want composable, easily understood parts that are simple to connect, and interact in predictable ways.

What you wouldn’t do is drop the kids off at a half-working tool and die shop and tell them to go make some gears. Maybe that’s qbasic.


> What would you give young people to start getting them literate in the machines?

Erector set[1]. It's a toy, but not super obvious how the parts are supposed to work together. (unless now they give advanced instructions for constructing things..)

1. https://en.wikipedia.org/wiki/Erector_Set


Yup, same thing as meccano. Now that I think about it I had an erector set growing up, beats me why meccano came to mind first. I missed out on lego robotics, but those look really cool too.


At 15 I sat with a book about QBASIC and got to a certain point, got stuck, and had nobody around me to ask for help and no idea what to do. I decided I wasn't smart enough for programming and stuck to basic html and CSS for years and years. I avoided CS in college. I turned out ok, but: I can code! I was wrong when I gave up, but I didn't know that because the resources weren't approachable enough for me. And maybe my determination and self-belief wasn't as strong back then. I wanted to be a game developer really badly growing up. And then I found a book that taught me I couldn't program.

I like the new stuff better!


If you get stuck following a book or a tutorial it's warranted to send an letter or e-mail to the author telling them where you got stuck. They will be happy to know where their book can be improved.


This is very true once you start producing content for people yourself (if you ever do), but it's probably something that almost no one reading a book considers doing.


A lot of us also grew up with tools/toys like The Games Factory, which got us excited and left us wanting more. And then we got into QBasic (which I sure do feel nostalgic about) and Borland C++ (which, on Windows 3.1, I really do not feel nostalgic about :P ) and MS Visual C++ (Visual Studio 6 was awesome!)


This read like an autobiography for myself. Wow. Reading this was a trip down memory lane. Thank you :).


I'm more worried about the tablet/phone generation. This was when our machines fundamentally shifted to toys not tools. We lost the input methods necessary for tools and things like the file system are abstracted away. We'll have a generation of programmers that have never seen a command prompt and no concept of what a file is.

My nephews (10 & 12) are learning programming at school for which they both had to have an iPad for some shitty programming interface. They didn't learn anything about logic because the animated graphics were too distracting, they learned how to manipulate sliders to adjust things like speed and that's about it.


This would make a great AskHN.

It would be interesting to know if anyone on HN in their early 20s or lower were first introduced to software development via scratch or some other means.


I'm 21, and have a fair bit of programming experience now (did some internships, have a job, know Python/C++ well and JavaScript/Go/Ruby/Lua reasonably well) and I learned to program using Scratch.

I had a lot of fun making games with Scratch, and I think it taught me a lot about logic and gave me a great way to express myself. I definitely got way more into the weeds about it than everyone around me, but one of my favorite things was opening up a game I admired on their website and trying to figure out how it works. This skill has definitely transferred into my broader programming career.

I have really high praise for it! The only thing looking back I wish we had was a way to export it to a .exe self-contained runtime to share with friends. I just used to pull my friends over at lunch.


I'm 24, so maybe a little old, but I was first introduce to programming with Game Maker. Later I did a little bit of Flash if you count that, and then moved onto Visual Basic.NET when I did 'Software Development' at high school.

For a long time (since mid-primary school) I had been toying with HTML, mainly from a book from the local library, and by just looking at the source code of websites that interested me.

I think it's clear that 'toys' like this, and like Game Maker, that make programming simple and user-friendly have been around for a long time, and don't necessarily stop people from learning more advanced concepts or languages, except if they lose interest. But even if they do, hoefully they will have packed up some skills that they can apply to other endeavours.


Here are some thoughts with no real point.

For me (26), part of what kept me interested in learning to program was the sense that I was working through something convoluted and solving some personal problem. Overcoming some sort of adversity. In this case, it was writing hodgepodge pascal to automate Runescape and Neopets, then also Flash for fun and profit.

I now have friends that are interested in the concept of programming, but have no application for it. I'm happy to aid in their journey, but when they ask me "What should I program?" I have no idea what to tell them. "Pick something arbitrary" I say, only to hear "What's that mean?". I feel like programming is something most people either come to organically or don't follow though with, regardless of challenge involved.

If we are to think about what would make a successful programming class, would it look more like math such that "Today we'll learn math, because math will totes be useful later for some reason" or would it look like "Make a computer do something interesting or useful with minimal human interaction".


+1 for Game Maker, what an awesome educational tool. You could start with building blocks, Scratch style, then move over to code when you needed a little more power -- with a 1-1 relationship between lines of code and the blocks (IIRC), and the ability to run that code as "just another block". A wonderful gateway to the real stuff.


I'm 23. Unlike many people here, I started programming only after graduating from high school and before going to college.

I always thought programming was cool but was never able to learn it (because of I bought some bad intro books to programming). Then one day I found out about the book C++ Primer Plus, it was wonderful :)

My first attempt at a real program was a console based repository management program for my dad's apparel company. Considering my dad didn't even know how to send email, he probably tried very hard to give me a good feedback. I didn't even know the existence of database, and just stored the data in binary files (I thought it was secure that way)

Funny thing is that after 2 years in college, I learned some web, database related stuff and developed the second version using Tomcat, Spring and MySQL. My dad was again forced to use it :)


23. First programming experience was with a C++ book my dad gave me when I was 10. Didn't learn too much from that. When I was around 12 in school we used Logo (MicroWorlds) in technology class. I had a lot of fun with that. I finally fully got into programming with C# when Microsoft XNA came out, was around 14 at the time.


22 and lazy, so I'll just link to a previous comment I wrote on how I was introduced to programming: https://news.ycombinator.com/item?id=16472517

Tl;dr: playing with tools, not toys.


At my school, we teach Scratch in 5th grade (US, age 10) and I teach Python in 6th grade. I think Scratch and the like are good starts, so I'm glad to see more offerings. Even so, stepping up to Python is a big step from the blocks languages.

Last week I started the 6th graders on MicroPython on the BBC micro:bit. So far it is going well, and I think it will capture some of the aspects of the QBASIC on DOS experience. Today I will show them how to do images on the 5x5 LED matrix, which will be much simpler than trying to do graphics on Windows. Even so, they will still learn about X-Y coordinates and pixel brightness levels.


Qbasic was never quite the professionals' system like C and Assembly was, but looking back, I was at least using the same system that non-technical managers who regretted firing the developers were clumsily banging out solutions with.


> Alongside a book with code snippets, I would simply write a line of code, hit run and see what happens. Then, go back to the code and 'go rogue' (meaning: change the numbers a bit and make the line 5pixels instead of 2 for example).

Grasshopper does pretty much this, but with a nicer UI and adapted to the constraints of a tiny phone screen. It gives you a code window and a graphics window and you get to write code and see what the code does. It's is a JavaScript environment which is modern-day web-world filler of BASIC's niche.


It is worth pointing out that your style of learning might be different than others', and gender has been found to be one such difference [1]. There are quite a few studies that have found tinkering to be done far more often by males, but is not necessarily more effective.

[1] ftp://ftp.cs.orst.edu/pub/burnett/chi06-genderTinker.pdf


The myth of "learning styles" was discussed here pretty recently:

https://news.ycombinator.com/item?id=16810980


The myth of the "myth of learning styles" is also discussed there. The 'debunked' "learning styles" was a very specific hypothesis about audio vs visual vs tactile modality, not a disproof that there are any differences in how people learn.


That is a very different thing.

This is not "visual/auditory learning" styles, but what strategy do you use to figure something out.


Actually the core of what I was trying to say is not about learning styles at all. You can use a real-world editor and a completely different learning style to create a real world application (by following along tutorials for example). The big difference, and that was the point I was trying to make, is that in a real code editor, you're learning while building in a real-world environment. Even if you stop in the middle of your journey, you will have built something that you can share with friends. Whereas these types of apps will take you through a journey which is great, but I wonder how many take the step of going to their computers, opening an editor and building their first real application.


Learning comes in different ways.

Also, some people who want to learn how to code may be older and they can't travel back in time to code when they are 11.


So, older people can learn programming easier with... a cartoon grasshopper?


It's just a mascot. O'Reilly programming books have cartoon mascots too.


How far does it make sense to take this? Take it too far, and all tutorials are bad.

IMHO there needs to be a balance between guided learning and self-directed exploration.

Too little guidance and you can't get your bearings, causing you to get stuck and unable to cross what should be relatively minor hurdles.

Too much guidance (or too little interest exploration) and you end up not really understanding why things are the way they are or what is possible beyond the very narrow range of things you've been taught.


Exactly. And the thing with old computers is they were kind of limited in scope because of hardware limitations. That in itself kind of gave you an idea of where to start because there wasn't much else on there. OP even mentions basically being stuck with QBasic. Now there's an endless field of where you could possibly start at. It's so useful to have some guidance of where to start.

Imo it's also much faster. Yes I can trial and error figure out a way to fix my car, but why would I not use a manual?


My experience with coding was using the old BASIC books (like the ones at https://www.atariarchives.org/ ), and stubbornly typing my way to make these games work.

When they didn't, I found it enormously satisfying to find out how to work around the problem being expressed in print; there were enough variations in BASICs for different machines that the listing for a TI 99/4A program wouldn't work in straight AppleSoft BASIC, for example.

But the time between typing all the code and finding out if it worked was grueling. I'm not sure if the students of today would be satisfied with that large a report-back loop.


The magic of coding, especially early on, is in realizing that you, a user, can deterministically control a computer (like you stated in going rogue). This has nothing to do with writing something that is real, it has to do with cause, effect, action, reaction.


I also started with Qbasic. I learned from the examples in the on-line help system. The first one I vividly recall running and changing was the CIRCLE example; probably the first code I ever wrote.


QBASIC age 11, same here. Haven't stopped learning or loving it :)


I tend to agree with Bret Victor on this one (http://worrydream.com/LearnableProgramming): changing numbers randomly is a terrible way of learning programming. We can, and and should try and do better. The microwave analogy in the 'Read the Vocabulary' sections is very apt.


The app does! Or at least, instead starting off with a `drawRectangle` function that takes a full set of x-y coordinates and 3 numbers for RGB for fill color, it starts off with "drawBox(red)" (remember, this is an introduction to programming) and builds from there.

Check out the user video someone else linked on this page!


This. I've been a multitasker most of my life, but the moment you organise task one after the other, and keep your focus, you'll just get so much more done. Uni-tasking gets you more done than multi-tasking, no matter how counterintuitive that may sound.


From what I've seen work, most of the OSS projects make money off of 'convenience'. This can be split up in many different tactical things, from consulting to charging for hosting, support, etc.


Time is the only healing factor in these situations. No matter how you bring the news, it'll take some time for everything to settle.


Chiming in after seeing us get mentioned here (context: lead designer @ http://Fairpixels.pro)

Working with engineers of b2b saas companies every day, for more than a year and having analysed all the best SaaS companies who have 10+ internal designers, I found a couple of principles that anyone can apply to make their website look decent:

* Consistency - One practical example: If you use a 4px border-radius, use a 4px radius everywhere. It may sound small, but having a consistent experience across your application makes the product feel so much more polished to your users. Don't use multiple fonts, different navigation menus etc. Keep it consistent.

* Reduction - If anything, design isn't about adding more things to make it 'look nice'. Try to remove as many things as you can. If something doesn't serve a specific function, then remove it. Every pixel should make sense. The more you put in front of your users, the more brain power it'll require to process.

* Divide - This is mostly UX, but one thing I see so many get wrong. A lot of SaaS apps overwhelm their users. They present them with all the features upfront. Whether it's a long onboarding form, or a dashboard with 50 actions one could take. By splitting up things in different ways, you can guide the user through the experience. Your signup process for example (that might be a big block in conversion) might be made so much better if you ask for certain types of information later on in the process.


I very much like your fixed fee / month business model. Exactly what I need, I will likely become a customer soon.

Is there a similar service out there that has fixed pricing for web/app development?


saw this few weeks ago: https://greenpine.co/#pricing


Heads up, looks like there's some issues with your site in iOS safari https://imgur.com/a/HcXfd


Happens on desktop Safari, and Firefox, too.


Looks like a good product. Nice site. Two heads up on iOS:

- there is a “Contact” link floating at the top of the page off centered that opens Mail. Maybe link it to your Olark integration.

- 14 day money back guarantee runs over the text underneath it.


Many other problems rendering the site on iPad for me.


Quick feedback on fairpixels.co/pro: clicking "Get started" (blue button top right) breaks the site, nothing happens, scrolling is broken afterwards. Mac Safari Version 11.0.3 (13604.5.6)


Tnx, pinging a teammate.


Autopilot tech in general should be open and shared among ccompanies and universities. The more brains we can put on this the better imho. If these things happen too often, Im afraid regulators will start making laws that prevent the use of this tech, which I believe has the potential to really make life better for all... one day.


I have always wondered why each company is developing their own software and algorithms... How will NTSB certify the software? Or will they? I mean, they certify car safety features now through crash tests, roll over tests, etc... Why is Tesla, or anyone manufacturer, allowed to modify vehicle safety features through OTA updates without recertification?

I realize it adds more regulation...and I'm sure there can be a middle ground. But I foresee a scenario where an OTA update is pushed and the next morning there are car crashes everywhere.


Patents and the ability to earn money by licensing out technology. That, or hoping they are the best and get more customers through it - I think that's currently the case for Tesla, selling the only commercially available semi-autonomously driving car ATM.


All manufacturers sell semi-autonomously driving cars. At a minimum cruise control, but more advanced features like e.g. https://www.toyota.com/safety-sense/

Tesla sells a feature set that sounds slightly more advanced on paper, but in practice the benefits are pretty comparable.


> I think that's currently the case for Tesla, selling the only commercially available semi-autonomously driving car ATM.

"I think that's currently the case for Tesla, selling the only commercially available semi-autonomous [electric] car ATM."

FTFY


Cadillac has a similar system out in production.


The regulators have been really easygoing so far with automated cars. I strongly suspect its because they take the optimistic comments of the tech industry at face value that these technologies are road ready. Meanwhile, I think Tesla and Uber perceive this as more of an open alpha. This will not end well.


For someone in the medtech space, it's been interesting to see how loosely (not at all?) marketing is regulated in automotive and tech in general. Were the FDA regulating automotive, there is absolutely no way that Tesla's driving assist package could be marketed with the name "Autopilot", for one. More broadly than just marketing, it's also amazing to me that Tesla could have released a feature (I know they've revised it since) that was designed for human supervision but did not require hands on the wheel for long stretches of time. What did the risk management look like there?


I think (at least in the US), the relationship the automakers have with regulators is such that if the automakers think they can make money by selling a feature, they will be able to get the regulators to come up with a way to allow it.

Not necessarily one as simple as OTA updates whenever the manufacturer feels like it.

As far as regulations preventing use of the tech, if level 2/3 systems end up causing more crashes than human drivers, we shouldn't allow use of them.


I would guess people would just stop using it


Serious question: how will it make life better for all? I haven't given that question a lot of thought, and I haven't heard legit answers from others yet.


If autonomous systems reach the point where they are measurably safer than human drivers, there's an obvious benefit to using them.

Again it's an if, but lots of people drive long distances and don't enjoy it. An autonomous vehicle would relieve them of the driving task. It would also add a transport option for people that are unable to drive long distances.

It's likely to reduce the cost of taxi like services, as drivers are currently a significant portion of those costs (autonomous driving turns pricing into almost a pure calculation about return on investment).

I guess you might dismiss those as not being "legit" enough since they are all contingent on the systems working well.


No, I'm with you here. Just thinking through the other side of some of these. Lost jobs. Not sure "safety" is a big enough issue here. On a larger scale, I'm significantly concerned that society (thru tech) is becoming increasingly optimized for comfort and safety. That bothers me. It removes so much of what is good about life. I don't want guaranteed life until 100. I don't want comfort all the time; that stunts growth. There is a lot of grey area here, of course. But this has been on my mind for a while now.


Losing truck driving jobs isn't removing what is good about life. Neither is too much safety. The people whose lives are being saved by technology aren't worrying about having too much safety. Only those who are privileged and don't have to worry about anything, realistically.


Living in a city where people park on the side of the road, I can't wait for autonomous cars to completely transform the urban space.

Currently, there are two lanes of parked cars, plus two sidewalks and (usually) two lanes for traffic.

Autonomous driving would allow cars to park themselves off-site, such as underground garages a block or two away. That alone could double the space available for pedestrians, or other uses of public space such as outside cafes, green spaces etc.

The ability to quickly call a vehicle, adaptable to your current needs (minivan for family on Saturday, open two-seater for a summer date) could also start a major move away from car ownership, reducing the total number.

Improvements in traffic management (shorter distances between cars, coordinated starting/stopping, interleaving intersections) also have the potential to allow us to reduce 4-lane roads to just two. We might even find ways to make one-way streets work for most residential area. All this again frees up public space.


All valid points, thanks


If done well (long way to go still) there will be less traffic accidents, less traffic jams, etc.


Fewer dead people sounds good.


I don't know about that. Let's talk unemotionally about it. People die. Not all of them live until natural death. That's ok. That's how life works. There is plenty of good that comes from this. Is a goal of keeping every person alive until X# (90? 100?) a good one? I'm not sure it is. Simply saying "people dying is bad" isn't a very reasoned thought if you take away the assumption that everyone agrees with this.


Sure, fewer people dying is a bit undifferentiated if you want to go for ethical discourse. I would probably be okay with a few extra dead people if that increased the overall happiness of the remaining people. I'm not sure that having people die in traffic is a good way to achieve that.


I get that, but this product development aimed at prolonging life, comfort, and safety through technology should not be taken lightly without this discussion right here (ethical discourse, as you call it). I can't divorce the two in my mind.


This is genius! As a designer & storyteller I love this and I’d like to support you guys with my team’s UI design power (we occasionally help open source or charity projects for free). Reach out if you guys could need some UI design help. Details in my bio.


It's a nice gesture but why not email them directly with the contact info on the website? Maybe I'm being a prig but this post seems like an ad, free or not


You're not alone in your sentiment. There are a few posts around here that do not "feel" like a typical Hacker News post. So my astro-turfing alarms are going off.

Granted, this looks like a good tool (at minimum: a very good marketing page), and the practice of astroturfing is unfortunately utilitarian (aka: it works ) in many contexts. But there's something offputting about some of the comments on this story right now.

With that being said: I'm not entirely sure if this tool is best suited for the hacker news audience? Its definitely more of an art tool, while the audience around here is more programmer / technical.


Why not just help with some tips here?


you can email me: charles@wonderunit.com


Of you need help with your UI (and you do...) check out: http://fairpixels.pro

It’s not about making just look nicer. But the product needs to be at the very least understandable. Simplicity is hard, but core to succeed.


Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: