Designer News
Where the design community meets.
almost 8 years ago from Koen Bok, Maker of Framer.
"if I didn’t already know it then I certainly wouldn’t go to the considerable trouble of learning it."
lol. good luck staying relevant in this industry.
Code is a hack like math is a hack. It's not a normative way of thinking, but with practice comes proficiency and mastery. Technology isn't natural by definition, it has to be discovered and learned.
Also, the different ways of thinking that software development opens you up to is incredible. I'm surprised anyone would want to hide all that behind a GUI for no real reason other than just to do it.
Additionally, a GUI would severely decrease precision & accuracy, which is required for during development.
... says the film industry, never.
This sounds like a point from someone that doesn't code. The filmmaker uses this application so he or she doesn't have to manually code it. What do you think the driving force behind the film makers GUI is? What do you think the video is saved as? There will always be a developer that needs to write the application to help those that can't code.
Find me a SAAS that can pass form data to two instances of SF, another CRM and send that data via email as a fallback. Code isn't going any where anytime soon. Sorry.
And just like computers have successfully hidden a great deal of math from us, they'll eventually hide a lot of programming from us, if not all. See also: the singularity.
I worry that this will take unnecessarily long though, because the people best equipped to bring us into to a post-code world, i.e. programmers, actually like code too much to want to do it.
Have you ever programmed in an assembly language? Moved bits between CPU registers? What about allocating memory in C? I don't think you're being fair to the amount of math computers are already hiding from us.
It's pretty cushy here in JavaScript-land (or Ruby-land/Python-land/etc), and it's easy to forget that a lot of the nice things we take for granted—like objects and duck typing and garbage collection—didn't always exist, and humans had to deal with these low-level maintenance things instead of just telling the computer what they wanted to happen. Think back just ten years: DOM manipulation involved a lot of complex logic until libraries like jQuery and Prototype made it accessible to everyone.
In a lot of ways, we're already moving beyond code in the way I think you're envisioning it, too. Apple's toolkit for building iOS apps includes graphical tools for building the interface, where you just drag and drop components the way you want them to appear onscreen. Services like Parse let you build backends without ever writing a line of code. We've actually been down this road with HTML and CSS, too—we had tools like Frontpage and Dreamweaver, but collectively decided that it was better to write our code by hand. We backpedaled away from this code-less future!
Ultimately, I think, we will move away from code for simple things like building apps. But it'll take time to get there… and there will always be something cooler and more complex that you do need code for.
It's not a normative way of thinking, but with practice comes proficiency and mastery.Technology isn't natural by definition..
I disagree. The fact that logic completely dominates our reasoning and our decision making coupled with the phenomenon that all computational expressions can be modeled, in the end, using a chain of logical expressions is one of the biggest reasons we think artificial intelligence may one day be able to fully replicate human reasoning and thought.
The fact we are such logical beings to begin with is a 'hint' that perhaps they are all computational, but we simply possess such a natural genius as to think it's 'not natural by definition'.
This is a romantic idea and in my opinion, a pretty accurate summary of things to come. But I think that day is further off than you're suggesting. My guess is that the current situation will prevail for at least the next 10 years. It may never change fully.
Like Dan mentioned, math has been around for decades. It is possible that the limitless possibilities code offers us simply cannot be significantly abstracted without diluting their effectiveness.
But I think that day is further off than you're suggesting. My guess is that the current situation will prevail for at least the next 10 years.
I didn’t actually put forth an estimate, but yours sounds reasonable enough.
What is the current situation exactly? Amazing advances in browser technology and platform support? The exciting evolution and maturity of JavaScript and many other web languages? The fact that more people understand the nuance?
The situtation I'm referring to is the fact that we have millions of potential designers trying to enter the web development world who feel blocked, because the way websites are currently built is so abstract and so unfamiliar. In a lot of cases it's the exact opposite to what most visual people expect.
I remember feeling that way myself when I was starting out. I persisted and broke through, but countless others don't. So while, as you mentioned, the current situation is a lot better than it was 5 years ago and is improving every day, it's still clearly not optimal.
So many things wrong with the last few statements.
As a practicing programmer who's trying to understand design better, I agree wholeheartedly with this. Just like we're seeing great progress and associated flux in design thinking and tooling (esp. prototyping), front-end programming is also undergoing massive churn, and is an area of specialization that can take you down a rabbit hole that is as deep as you want it to be. There is language churn (Elm, ES6, TypeScript, Flow, Coffee..), framework revolution (React, Ember, Angular, Mercury, Om, ..), flux in CSS methodologies (BEM, SMACSS, SUIT, Atomic), and each of these divisions have many other smaller choices to be made like testing frameworks, utility libraries, promise libraries, async, and so forth.
The point I want to make is that it will take years of practice, attuning to a different way of thinking, and immersing our already limited mental bandwidth to a different field, for either a programmer to become better at design or for a designer to become better at programming. And a lot of this programming churn, for anyone except a professional programmer, is an unproductive use of our lives. We have to keep up in part because of fashion fads, and in part due to the massive entropy inherent in any changing system. But even for a professional programmer, not all of the churn is worthwhile - if there was a way to figure out only those things that matter, those that adds to the essence of our practice, we could simply focus on them, and cut out all the noise. This is unfortunately hard in practice.
However, for a designer trying to be empowered to be also a maker, which the original post talks about, which is also a worthwhile goal, there are good tradeoffs that can be made - things like a basic understanding of the box model, the CSS2 specs and ability to write HTML to understand DOM flow and source order, can make a huge difference in how a designer approaches the web as a medium. Some Javascript will be gravy on top, I'd recommend React's component model, but at the end of the day, how much of our soul do we devote to all these interesting pursuits - would we find inspiration from the colors of nature, keep our eyes peeled to learn design from the real-world, or would we enjoy small pure functions and lovely abstractions? There is a balance to be struck here, which I think is something unique that each of us have to figure out for ourselves.
Very well said, and very down to earth.
"but I’m not so enamored with the mystique of monospaced green text on a black background that I’m blind to how comparatively inefficient it is."
maybe you're just not good at it.
Designer News
Where the design community meets.
Designer News is a large, global community of people working or interested in design and technology.
Have feedback?
I started off my career working in code and transitioned into pure design. I still use JavaScript occasionally to make prototypes interactive. Just to stay sharp I guess, or maybe because it feels nice, and I actually enjoy flexing that skill for some reason. But there’s not really a reason for it in my view, and if I didn’t already know it then I certainly wouldn’t go to the considerable trouble of learning it.
There are some really great tools out there for showing interaction that don’t require coding skills to use—Flinto for Mac, Principle, Pixate, Invision, After Effects, and others. I like the feel of massaging code as much the next guy, but I’m not so enamored with the mystique of monospaced green text on a black background that I’m blind to how comparatively inefficient it is.
The thing is, code was never a good idea, it’s a hack. It’s not natural and it requires people to behave like computers, rather than computers adapting to us. We’ve had to do it to get here, and I appreciate that. But I look forward to the day that our tools are so good that the code is completely hidden from us, and programming is officially a dead art.