"The planning session was enlightening because what became obvious is that it’s easy to describe how you want a user experience to feel--friendly, welcoming, and so on--but what you specifically want an application to do is separate from that."
If every non coder could learn this it would save us all a heck of a lot of time
Godadmnit, being able to code a bit is no longer "Nerdish", it is fast becoming an essential skillset that every school leaver should have.
And before all those people come and say "Only a coder would say that" I include things like people writing various stuff in excel to help their spreadsheet calculations as coding.
This whole "Anything vaguely technical = Nerd" thing is really getting to me, maybe I have just been watching the old farts at SOPA to much
Except now students leave highschool without a solid background in math as is. The North American education system should be fixed before new topics get piled on.
This is like asking: Can You Learn To Play a Musical Instrument In One Day? and then sending someone who can't even read sheet music.
Suzuki said, "Knowledge is not skill. Knowledge plus ten thousand times is skill." In other words, you need to do a lot of coding (including debugging) to become proficient at it.
But they /are/ code. They're sequences of characters that get lexically analysed, parsed in to an abstract syntax tree, executed by an interpreter and make a computer do stuff. "Code" != "Turing complete"
I was thinking the same thing. If someone wanted to learn to "code" in a day, they'd be better off learning an easy general-use programming language like Python. While HTML/CSS will have a more familiar result, starting a non-nerd off on Python might be more illuminating and demonstrate how to think like a programmer.
Remember when we had to "program" our VCRs? I kind of share the feeling that "our word", in this case "code", is being abused and overly simplified, but overall I don't really care. People are taking the mental effort to design something in their heads and then realize it by directing the tools available to them (with some guidance of course); the more of that the better. The main danger is in leading people to believe that what they did is it.
Sure it's like calling the making of a tune with one of those "press this object/key to make this sound, that object/key to make that sound" apps ( http://distoorted.livejournal.com/10914.html is the most recent one I saw ) "composing", but I can't even work those apps let alone design a pleasing fugue or canon. Taking 8 hours to be instructed in some very basic musical theory in that context would probably be beneficial anyway.
It sounds like he had a productive day learning, but from the article it's not clear that he came away with a real appreciation for the fundamental difference between (HTML and CSS) and Javascript.
I may be biased, but to me the verb "to code" means implementing things that require Turing completeness to express.
There are some neat advances in Programming Language research, relating to restricting languages (or sub-languages) to a terminating subset. This is typically done in a functional context, and then you can do this by restricting recursion.
These non-turing-complete languages can be used for some useful things, besides the compiler's proof that they terminate. The main use is getting totality (knowledge that for all valid inputs, you will get a valid output) and then writing programs that generate proofs. The fact a valid, total program that generates the proof exists, means that the proof exists, and we don't have to run the program! Thus, in this terminating-language context, a valid program that generates a proof, is itself a proof.
This is very useful for compiler-verified proofs of correctness about various aspects of your program.
tl;dr: Turing Completeness is taken for granted, but for many kinds of programming, it appears it may be useful to have less.
I could take a day long course in marketing and speak like a marketing exec..so what? That doesn't mean I'd be capable of solving real world marketing problems.
How about on day 2 the new web coder gets an assignment: The client wants an ugly picture to cascade in the background of their website and the client is thinking about moving all their data to Sharepoint because they heard it's best solution (no matter what the problem). You're job is to deliver the the correct solution. Go.
Being able to do lots of things at a very basic level is an immensly valuable skill, because you can tell quickly what sort of expert you will need and communicate effectively with them.
Couple this basic understanding with problem solving skills and and you become able to sit down with subject matter experts and quickly come to a solution to problems they're stuck on.
The article was not titled 'Can you learn to speak to coders in one day'. It was titled 'Can you learn to code in one day'. And the conclusion seemed to be yes.
He didn't learn to code (as in solve problems) was my point. In fact someone like that may end up making problems.
or. if you are Groupon/Lightbank you heard orange and grey were the supreme colors to do a website in..so you hire a local agency ..do you tell them no and not get the job or subtly change their design anyway to make it less 'bad'..
I think in one day you can learn such things as the fundamental nature of data bits and the concepts of variables and loops in a day...that sounds lame but ask a non techie friend if he/she knows that HTML is just a text file. A depressingly few number of people realize this.
This sort of thing is why Windows/OSX/Unity developers' idea of what's needed for "usability" is mostly BS. Most people aren't nearly as incapable of learning this stuff as we like to believe.
Long answer:
Noooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo.
I think an easier fix would be setting the maximum width of each comment to something (maybe in % and dependent on the level of nesting) and letting overflow be visible. That should let all the other comments wrap normally without complicated logic or changing the behavior of posts like this.
Of course, I haven't done much CSS in a while, so I don't remember the particulars, but the important point is that you can fix this with CSS (I think).
The way I see it, the alternatives to forcibly wrapping are:
* Overflow that extends into the page margins (looks ugly) and either forces the browser to show a scrollbar, or forces the user to resize the window to view the full text (which may not even be possible).
* Overflow that is contained within the margins, and can only be read by use of nested scrollbars (I hate those, don't you?) or again, by resizing the window to widen the content column width (again, not always possible).
Of all the options, I think forced wrapping is the most visually pleasing. Whether that can be done with CSS I don't know. I do know that introducing spaces will do it. Other techniques may involve e.g. Unicode soft hyphen, see e.g. http://blogs.msdn.com/b/oldnewthing/archive/2011/12/13/10246...
Of course, another way to do it is to simply reject the input. That's the way Slashdot does it.
If every non coder could learn this it would save us all a heck of a lot of time