Once upon a time, I was in deep-thinking mode and I challenged myself to answer the following riddle: How has the way I do things really changed? Then, I decided to hold hands with the ghost of technology past and find out together the significant differences between the way I solve problems today and the way I did it yesterday and imagine what kind of future to expect for the next generation of developers.
The gap between new and imagined technologies is smaller every day, challenges are more complex, and knowledge has an immediate expiration date. For a developer, it is hard to keep up to date with the skills required to get things done. Every day, new kinds of devices appear (smart phones, smart glasses, smart clothing, smart home, smart . . .) with more capabilities (HD display, GPS, barometer, accelerometer, gyroscope . . .) and frequent software updates. We are pushed into fast-paced learning, and the skills required often change.
Fifteen years ago, web designers made a decent living with some basic knowledge of HTML, CSS, and photo editing. Today, thanks to more powerful devices and faster internet speeds appearing every day, web browsers can offer richer experiences and web sites went from simple static pages to being dynamic and interactive. For web designers, this means the game is on a whole new level: Multimedia assets (video, sound, CSS animation . . .) become part of design and user experience (animated icons, video background, transitions . . .), pages and their content are designed to be displayed and interacted with on a wide variety of devices and browser alternatives (responsive design), and the use of third-party components (track visits, social media sharing, sideshows, drop down menus, galleries . . .) is a standard practice. As a result, designers have to learn how to properly embed and set up these components and multimedia assets.
While I was thinking about all of this, it struck me in the head that how the way I do things has really changed is that I invest more time searching the web rather than trying to figure things out myself. Thankfully, projects and requirements are more complex every day, and there are always opportunities for problem solving and mentally staying in shape. The speed with which we can access information and the tools that make our work easier are definitely changing us. With the blink of an eye, I can search and filter hundreds of images to get inspired; I can find plenty of code examples and how-tos to help me get the job done. I don’t have to remember how to do things the hard way anymore; I only have to remember passwords. :) If I have a vague idea of what I want, I will end up finding it! Yes, that is how smart those web search engines are.
And this is how every day I get more and more dependent on web browsing. It is not an addiction! (unless eating is an addiction :) ) Keeping up to date with trends, tools, and techniques is mission impossible without freely searching the web; otherwise, your efforts will result in underperformance or obsolete products. It’s imperative for developers, engineers, and artists to master the art of searching the web, which involves being smart about finding results and deciding what goes inside our pretty little heads.
Before I Met Google
1. Failure Is an Option
I’m 40 years old, and a lot has happened since the first time I turned on a computer in 1983. I remember my dad had contracted a BASIC programmer to develop some sort of accounting software. The programmer came to our home every evening for weeks to write the software on my dad’s computer. When I was 11, I completely destroyed my dad’s accounting software while I was translating all the text in the program from Spanish to Catalan. And boom! A programmer was born. I guess failure set me on the right path. :)
2. Learning Is a Constant
3. Play until You Get It
Back to reality. :) In 1996, I was 22 years old and back to computers. I got a Pentium 100 and a midi keyboard to play with audio and 3D software. I used to buy magazines like crazy to follow their how-tos, and a little later I sent them my amateur 3D image creations to be rewarded with (now obsolete) 3D modeling books. But, hey! It feels great to see your artwork published. By then, I was in college and working toward a philosophy degree, and my tutor allowed me, surprisingly, to get elective credits through taking a CAD software class at the facility of architecture and engineering. I did pretty well on my last test, but I forgot to include a door to enter the 3D building I built with the software. :)
4. Practice Is the Key
In 1998, without even being close to finishing college, I left to learn how to make jewelry and help my mom with her business. I worked very intensely to quickly earn my professional titles in jewelry and casting stones. I took classes for 9 hours every day for a year and did nothing more than practice, practice, and practice some more. And I rounded up my skill set, taking wax modeling classes. This was very exciting because after a while I got a milling machine, which was kind of like today’s 3D printers (but more limited), to reproduce 3D models on wax. Once I had a wax model on hand, I could retouch it (with skills already acquired) until I obtained the desired result, going beyond what the machine could do for me. Once a wax model was complete, I would send it to a place that specialized in converting wax into gold. It sounds magical, right?
5. Stay Curious
Fast foward to the year 2000. One day, I got bored waiting for a client to pass by my mom’s store, so I thought to build a web site, like a portal to display artists’ creations. As I usually did when I didn’t know how to do something, I went to buy a book. The title was something like “Learn ASP with Examples,” and after 2 months, I was ready to publish the site to the world wide web. It was packed with features like forums, chats, search, and a file manager for users to upload their own images and documents. I had never used the Internet before, but I quickly started meeting people around the globe with similar sites, and I felt very good about it. After years of travelling, now I could explore places and meet people from everywhere without moving one inch from my desk.
This new “techno start” led me to meet my best friend ever: the amazing Google Search. It went something like this: In 2001, I was attending a free Microsoft Excel training for self-employed people, and the teacher said something like, “If you need to find something on the internet, please go to http://www.google.com.” And wow! He was right! It was fast, had no banners, and most importantly , I got results instead of advertisements. I thought it was incredible.
After I Met Google
6. Search Is the Tool
I’m not lying when I say that Google Search is a big chunk of my day. Every time I type something in the URL address bar, the search engine immediately starts giving me the most likely sites or information I’m looking for. Do a test: Type in the address bar something like (8*4+7)/(3+4), then press enter, and . . . There you go! You just met my calculator. Now type Houston weather and press enter. Amazing, right?
When I search the web, I’m not satisfied with just one result. Let’s say I need a slide show for a new project that I’m working on:
- First, I search for cool sites that use slide shows in their front page.
- Then I look for free plug-ins. I do a comparison and look for simplicity, ease of customization, good looks, and cross-browser compatibility.
- If there is no winning plug-in, I look for code samples of behaviors I want to display on the slide show. If the samples are clean and they show improvement compared to how I was thinking of doing it, I gladly borrow the code or solution.
- If I can’t find something, I just I go ahead and I build it from scratch.
Doing a web search on a topic is always good, even if you know how to do it or what it’s about. It’s a way to make sure you are up to date and compare other people’s solutions. Nothing is better for improvement than updating your knowledge and smoothly refining or replacing habits.
Below, I’m going to list the tricks I most frequently use while I’m using Google Search:
- I search using the plus sign before the most important keywords to make sure I get results from those keywords. Example: +google +awesome pistachio
- I search for exact sentences by adding quotes to them. Example: “Google is awesome”
- I search Google Images for inspiration when I’m going to create artwork.
- I search Google Videos to find how-tos.
- I search words and sentences to make sure they are spelled correctly or well written.
- While I’m developing, I search the web expecting results from specific sites like StackOverflow to find a solution or W3Schools as a reference guide for web development.
For a complete list of tips and tricks, click here.
7. Embrace Change
Since Apple decided not to allow Adobe Flash Player on their mobile devices (Thoughts on Flash, 2010), I was pushed to step into HTML5 and leave aside Flash development. I still use Adobe Flash Professional for prototyping and creating artwork, but when I have all assets ready, I jump into coding with the editor on one screen and Google Chrome on the other.
Google Chrome is growing on me. By pressing the magic key F12, it opens all the development tools I need to debug my work. Below the address bar, I have the bookmarks bar where I keep services, tools, and sites I need to access frequently. Also, I have installed all these extensions next to the address bar to make my job and life easier:
- Awesome Screenshot—Allows you to capture part or all of a web page, annotate your screenshot, blur sensitive info, and share with a one-click upload
- Web Developer—Adds various web developer tools to a browser
- Adobe Edge Inspect—Wirelessly connects multiple iOS and Android devices to your computer; synchronously browse, inspect, and debug on devices
- ColorPick EyeDropper—An eye-dropper and color-picker tool that allows you to select color values from web pages
- Jot—This extension replaces the new tab page for note taking
- Twipster—Simpler, cleaner Twitter styles (twitter.com) for a more readable experience
8. Stay Synced
In 2014, my responsibilities shifted a little and I started using a Google account for real—I created different Google+ profiles for the sites I manage, set up YouTube channels, and played with Google Webmaster Tools. And even better, I connected my Google account to the Google Chrome browser, and from there all my bookmarks and extensions are synchronized with the other devices where I have the browser installed. This is much easier for me; I enjoy a seamless experience everywhere I go. Before, I was continuously sending e-mails to myself with links I wanted to reach and installing the same tools again and again.
Finally, this is a small list of tools and services I can use from any device:
- Quip—Combines chat, documents, spreadsheets, checklists, and more in a simple and elegant interface that makes collaboration easy
- Feedly— News aggregator application for various web browsers and mobile devices
- WordPress—Write new posts for your blog, edit content, and manage comments with built-in notification
- JustUnfollow—Lets you unfollow Twitter users who do not follow you. It also lets you follow Twitter users who follow you. You can find and unfollow inactive Twitter users.
- View Later—Saves pages to view later
Everything becomes more complex over time (I know, I repeat myself), but at the same time, we gain more tools to simplify and speed up our daily tasks. I don’t remember the last time I went to the bank or the last time I went to rent a movie at the store. We have apps for that. :)
In most things we do, we just follow instructions, push a button, and we’re done! We delegate so many of our responsibility to tools that we are going to end up like Charlie Chaplin in the movie Modern Times.
On the other side, as developers, we are pushed to the limit. The market’s demand for new technology ensures it. While I was writing this post, someone may have built a new framework or a new programming language that we will have to learn to use or our careers will die. Yesterday, I was programming a PC, now I’m programming mobile devices, and tomorrow I might be programming robots and house appliances . . . Who knows! Instead of worrying about this, I should spend more time programming my brain with better habits :)
From where I stand, I see how younger generations are already better with technology than I am. I see how devices allow kids to explore their creativity at levels hard to achieve with paper and scissors. I see teachers having access to unlimited resources and getting inspired from shared experiences, through social media and educational blogs, with the purpose of getting their students engaged with learning. I believe that the story of an adult sitting behind a table and lecturing to a crowd of kids is getting closer to becoming a myth.