Digital Edition

SYS-CON.TV
Do We Need to Teach Designers Programming?
Designopers and Devigners

Fast-spreading rich Internet applications require new skills for development of what was known as boring-looking enterprise applications. In the past, development of the user interface was done by software developers to the best of their design abilities. A couple of buttons here, a grid there, gray background. Their users were happy cause they did not see any better. The application delivers the data – what else to wish for?  Enterprise business users are not spoiled and work with whatever is available  – they need to take care of their business. It is what it is. Is it really?  Not anymore. I’ve seen excellent (from the UI perspective) functional specs for financial applications made by professional designers. Business users slowly but surely becoming first-class citizens! The trend is clear: developers' art does not cut it anymore. You need to hire a professional Web designer for your next Web application.

The vendors of the tools for RIA development recognize this trend and are trying to bring designers and developers closer to each other. But the main RIA tools vendors, Adobe and Microsoft, face different issues.

Adobe is a well-known name among creative people (Photoshop, Illustrator, Flash) and now they are trying to convince developers that they have something for them in the store (Flex, AIR). Adobe is trying to win developers' hearts, but doesn't want to scare designers either. In addition to various designer-only tools, they are developing a tool called Thermo that will allow designers create Web application without knowing how to program.

Microsoft comes quite from the opposite side – they have legions of faithful .NET developers, and are now creating tools as a part of the Silverlight offering,  trying to convince designers to create UI for RIA in Expression Design and Expression Blend IDEs that produce code for .NETdevelopers.
Recently, I attended an interesting event for educators. Adobe had invited professors from different schools to discuss what has to change in the curriculum of Visual Design and Software Engineering disciplines so designers can understand programming better and software developers would be better at designing the user experience. In my opinion, it’s a complex and not necessarily achievable goal.

Do we need to breed new creatures called d-e-s-i-g-n-o-p-e-r and d-e-v-i-g-n-e-r?

I don't think so. Developers are from Mars; designers are from Venus. I know this firsthand. My son graduated from the School of Visual Arts, majoring in classic animation. I am a software developer. We are people from different planets even though he is my son. Several times I’ve approached him offering to teach him Flex programming so he could double his income. He rejects that saying it’s boring to sit in front of the computer all day writing code. He doesn't find it boring to spend hours drawing or animating, go figure.

No one will be able to make me a good artist either.

If I’d was staffing a RIA project, I’d rather hire two different talents – a creative person and a Web developer…budget permitting. But if the money is tight, I‘ll have to bring on board either a designoper or a devigner.

About Yakov Fain
Yakov Fain is a Java Champion and a co-founder of the IT consultancy Farata Systems and the product company SuranceBay. He wrote a thousand blogs (http://yakovfain.com) and several books about software development. Yakov authored and co-authored such books as "Angular 2 Development with TypeScript", "Java 24-Hour Trainer", and "Enterprise Web Development". His Twitter tag is @yfain

In order to post a comment you need to be registered and logged in.

Register | Sign-in

Reader Feedback: Page 1 of 1

We are an FSX (Flex/Spring/XFire) shop. With the convergence of Adobe and Macromedia, I am counting on them to continue to improve Flex to where nice looking front-ends are a "given". Already, my client side interfaces look 100 times better under this technology. Recently, we've seen Adobe include within CS3 the ability to build Flex skins that developers can import into their project. Another big plus! What we could really use is a library of templates, as well as a library of icons. I waste more time trying to find the right graphics because our company won't hire a graphic design person. So, the templates and graphics library would help greatly. Beyond all this, a developer can help himself by having an eye for symmetry, proper and consistent spacing, and an eye for color harmony and contrast. He doesn't have to be a graphics design expert to produce some terrific web apps.

It's impractical to expect a designer to become an obect-oriented developer. It's much more practical to teach a developer some basic things that I mentioned above, while enhancing the assets libraries.

R. Grimes

Yes....as an artist first and a developer second (after years of arduous assimilation), we need to create a less fragmented approach to these skill sets that, increasingly, cannot afford to be mutually exclusive. The integration of code and develop-think into the more subjective, more ego-pleasing, but more often than not, less functional world of design has to be part of the new system of instruction in an era where fewer and fewer projects are taking place in traditional settings. We need devigners (great name) and centers of learning which are not biased toward one discipline over the other. Possible? The odds are yes. But where and how to emphasize it? This article was an awesome start.

Well in that case, you just weren't doing it right. It's not hard to create custom tags for your Web designers to use, and if you refuse to use custom tags to access business logic coded in a domain model in Java, then that's not the fault of CF. The worst you could say is that many of the built-in CF tags are oriented towards business logic, and so they might tempt a novice programmer to use them, with tier leakage as the result.

But CF is perfectly fine as a presentation layer for smaller web apps in place of jsps. I think Web designers feel more comfortable with CF's tag-based syntax than they are dealing with scriptlet code. And your team is in control of the design of the custom tags, so they should also be easier for Web designers to use than ones in Struts or JSF.

But for Web apps of more than maybe a couple dozen screens ("pages", that is), I would just go full bore with Spring/MVC, because it offers a lot of support that you don't get writing POJO's and accessing them through custom tags.

rofl, rofl, lol, lol, lol... All CF apps I've worked on have turned into a complete mess that has NOTHING to do with "layered" architecture.
I would say you 1st need to tech CF developers... how to code.

No, we do not need to attempt to teach designers how to code. That would only be necessary if the architecture of the app were done wrong. Layered architectures for web apps have been available to Cold Fusion developers since 1997 through the custom tag interface. Such approaches make it possible for developers to write the business logic while designers focus on creating the UI.




ADS BY GOOGLE
Subscribe to the World's Most Powerful Newsletters

ADS BY GOOGLE

@DevOpsSummit at Cloud Expo, taking place November 12-13 in New York City, NY, is co-located with 22...
CloudEXPO New York 2018, colocated with DXWorldEXPO New York 2018 will be held November 11-13, 2018,...
DevOpsSummit New York 2018, colocated with CloudEXPO | DXWorldEXPO New York 2018 will be held Novemb...
DXWorldEXPO | CloudEXPO are the world's most influential, independent events where Cloud Computing w...
Disruption, Innovation, Artificial Intelligence and Machine Learning, Leadership and Management hear...
In this Women in Technology Power Panel at 15th Cloud Expo, moderated by Anne Plese, Senior Consulta...
Enterprise architects are increasingly adopting multi-cloud strategies as they seek to utilize exist...
Enterprises are striving to become digital businesses for differentiated innovation and customer-cen...
DXWorldEXPO LLC announced today that Telecom Reseller has been named "Media Sponsor" of CloudEXPO | ...
"We host and fully manage cloud data services, whether we store, the data, move the data, or run ana...
Containers and Kubernetes allow for code portability across on-premise VMs, bare metal, or multiple ...
"Akvelon is a software development company and we also provide consultancy services to folks who are...
In this presentation, you will learn first hand what works and what doesn't while architecting and d...
DXWordEXPO New York 2018, colocated with CloudEXPO New York 2018 will be held November 11-13, 2018, ...
Most DevOps journeys involve several phases of maturity. Research shows that the inflection point wh...
Modern software design has fundamentally changed how we manage applications, causing many to turn to...
In his session at 20th Cloud Expo, Scott Davis, CTO of Embotics, discussed how automation can provid...
In his session at 20th Cloud Expo, Mike Johnston, an infrastructure engineer at Supergiant.io, discu...
Founded in 2000, Chetu Inc. is a global provider of customized software development solutions and IT...
Dynatrace is an application performance management software company with products for the informatio...