Monthly Archives: August 2013

Interview With Web Developer Andres Spagarino by Rob Snyder

Andres Spagarino has been a web developer for over a decade. He currently works for California Center for Sustainable Energy in San Diego California, where he provides online solutions for meeting the needs of the non-profit company. Andres has a deep appreciation for open source solutions and the open source community. He believes that it is a great way to collaborate with other people and re-use some of the development efforts for the good of the community.

My wife worked with Andres for two years while we were stationed in California, and she introduced us this evening over e-mail. I sent him a few general questions to get a web developer’s perspective on my own areas of interest on the subject.

What is your favorite site online today?

I am a little green/solar-geek, so I like http://www.renewableenergyworld.com and treehugger.com. My favorite part is not too much the design aspect but rather the content and functionalities (mobile ready, smart newsletters, etc).

How are you inspired by other web developers, and how does that show in your work?

I admire open-source solutions and the community behind it, I have used heavily a CMS open source called Joomla and we just recently switched to Drupal, we also are very involved with a CRM open-source called CiviCRM… I do get actually inspired by a few developers in these community since they are willing to help other developers like me in their spare time… In my work I am a strong advocate for open source solutions and I use them whenever possible and try to support them by contributing (both by donations and development support).

Where do you see yourself in 5 or 10 years, as web development and web design continue to evolve?

I believe the online media is shifting from computer base to mobile/cloud storage base. My challenge in the next 5-10 years is to keep myself ahead of the curve in implementing new technologies. I believe that I will always be in the open source development environment and that soon corporations will be moving into this format… many companies are already doing so.  For example our local utility company is using open source Drupal, the next generation of mobile devices and seamless data integration will be a lot easier when we will use open-source and not proprietary software… I believe this technology evolution is happening right now.

What advice would you give to a new web developer today?

Get involved into any project that you are interested and use the community to not only master your skills but also to give back by helping other developers. This is a great way to learn, network, and stay updated with whatever software you get involved.

Bittersweet

I am glad to be getting done with this class because it is the natural progression of things; to move forward we have to move on from where we are. But I will miss the class because I have found the learning to be, all at the same time, fun, fast, frustrating, and fulfilling. The thing I have found most exciting is the fact that I know I will use this class in the future. I cannot say that of my other classes. I really enjoyed both Covering Capitol Hill and Crime Reporting, but the odds of being a journalist in both of those fields is slim (with the exception that many Capitol Hill stories are about corrupt politicians…).

I interviewed Patty Tompkins, who has worked for numerous companies as a contractor, consultant, and developer. She is one of a small number of women who started programming early in the computer era. She started in the late ’70s and has kept up on the cutting edge of the industry all of these years. She now owns her own company that contracts out to other companies. I met her during my trip to New Hampshire, which is where she is based out of. She was really funny and nice, and I could tell that she is someone who is able to get things done, no matter what. I think she summed it up best when she told me that she doesn’t see it as work, but rather an enjoyable hobby.

She has also found a way to be a ski instructor for over 20 years, and it really made me think about how I want to have my career path go. I want to make sure that I don’t get stuck in a rut doing work that I don’t enjoy, when I could be out doing fun things that I could make a career. This course has shown me that I could find that combination with writing and programming. I want to make sure that I keep my head up and look for the latest in technology and stay at the forefront. Once you get stuck in a certain technology, you can stay there for a long time, and I want to be always adapting.

Web Developer Patty Tompkins

Jennings Web Developer Profile

Patty Tompkins, 58

President, Autumn Software, Inc

Applications Developer/Web Developer

Patty Tompkins started at University of Bridgeport, graduated pre-med three schools later, went to intern at a programming company, took a left turn as a ski instructor, and then worked her way up to building her own company that she runs today. Her career has seen the beginnings of client-servers, PCs, and the internet, and she has had to change along with the technology.

Tompkins feels that only certain people can be good programmers, and that it is a state of mind rather than a simple learned skill. “I don’t want to stereotype men or women either. I have met many men who were terrible developers, and I have met many women who were terrible developer,” she said, “I think that it is a matter of how they think; how they solve problems that makes them good.”

Owning a company puts Tompkins in a position where she has to be the PR representative as well as the president. She is always thinking about how she is showcasing herself and her company to possible clients.

Being a woman in a male-dominated profession has not been lost on Tompkins, as she has felt the need to prove herself to men who haven’t seen her work. “They were like, ‘She can’t do that,’ and I think they pre-judged me before they even met me,” she said. She has made significant contributions to the programming community, leading multiple seminars a year to give developers experience in many different languages or skills, teaching at New Hampshire Technical Institute, and helping those developers in her employ to gain new skills that will help them be more marketable.

Tompkins wonders what effect the next generation of developers will have in the programming careers. “They have grown up with the internet always being there, and we have gone from having nothing, to having all of this,” she said, “They might be great or they might not understand.” She thinks that a lot of the things that are hard for someone older will come more naturally to a younger developer, but that they might not have the experience of how it all came to be, and why things are put together the way they are.

Many people go to college with no experience and little idea of what they want to do as a career. Tompkins was in that boat. She was a pre-med student who got disillusioned with the university, took a year off and then took classes out of the University of New Hampshire, Notre Dame, and Saint Anselm’s, ultimately graduating as pre-med but finding an internship programming for a database company.

Once she started programming, she found that the work was more fun than simple work, and she wanted to continue in that career path. “The guy asked me at the end of the six-month internship if I wanted to make some money at it,” she said, “I was like, ‘YES!’ and from then on I’ve been doing this.” After a few years, she started a team for her company that was based out of New Hampshire, and when the company got sold to Lockheed Martin the owners wanted her team to move to Texas. Since no one on the team was willing to do that, they started their own company, Chestnut Hill Software, with Tompkins as their president, and worked on in artificial intelligence for six years, until the company finally folded and she rebooted with her current company, Autumn Software.

Tompkins finds the freedom of having her own company to be its greatest asset. “I’m not becoming a millionaire with my own company,” she said, “But I am able to stay on the cutting edge of technology because I can decide which direction to take the company.” She enjoys the work because it is always changing. “In a company with a lot of employees, you can get bogged down in maintenance, where the development is all done,” she said. It’s easy to find developers in situations where they aren’t doing anything new, just maintaining the status quo, and she doesn’t like that. She prefers to find the projects that test the boundaries and challenge her company to keep up with the current trends of technology.

The Wrap Up!

Class Overall

I was not sure what to expect from the Web Development going in to the class, but I was definitely excited about the opportunity to learn. Maybe too excited. I feel like i should have run with the rest of the people who dropped week two, but I remember thinking, I am a Consultant in the IT industry, this class should be easy. Was I wrong. Not only was the subject matter difficult to understand, but the non-structured  approach for the class made it a challenge to follow. On a more positive side, now that the course has come to an end I can appreciate all that Greg worked hard to teach us. Greg, I really appreciate your commitment to exposing us to a well-rounded set of Web Development concepts.  It was a lot of information for such a short period of time, but it was worth it.

What I Learned

Throughout this semester I learned a lot, and had some personal breakthroughs. I decided that I am not cut out for Web Development. It is fun and I know that I can make progress and possibly become an okay developer, but it is just not for me. Development requires patience and complete commitment. It is a lifestyle which drives me crazy and which I do not find rewarding.  The course definitely helped me learn a lot about myself  such as sometimes we just have to walk away.  If something is not gratifying walk away and find someone does enjoy it. This way you both win.

Why What I learned Matters

What I learned will save me time and headaches in the long-term. I have accepted that yes JavaScript, CSS, and HTML are amazing and important to this era. Expectations for myself going in were very high so I am currently dealing with disappointment; however, the bits that I did grasp such as how to make updates to WordPress sites from a child template, creating taxonomies, and making design modifications to a page will help me make an impact.  In fact, earlier today, I started showing my 17-year-old brother David how to update the template files for my site and talked to him about sublime, and cyber-duck.  I could have not done this three months ago.

What you’ll do with the new knowledge and skills

My plans are to leverage what I learned to help small business obtain an online presence. The knowledge which I have will help me get Clients started and will enable me to orient them in the right direction. I may not be extremely savvy on web development, but I am passionate about people and seeing them fulfill their goals.

Thoughts on re-reading the initial readings

These readings were a great way to closeout the semester.  They helped reinforce some of the concepts learned through the semester, specially about troubleshooting and thinking. they also refreshed my memory on the key concepts and practices which must be applied not only to be a great developer and/or developer journalist, but to have a great impact on life. My favorite pragmatic approach being:

Be a Catalyst for Change – You can’t force change on people. Instead, show them how the future might be and help them participate in creating it.

This approach definitely works, I use to kill myself trying to fix situation and was not getting anywhere. Today, I find myself taking a different approach – showing and action and it is really helping me make breakthroughs. We can never assume people understand what we are saying. We all speak a different language, by doing and being an example, we rid ambiguity.

What you want to learn after the class ends

Websites are extremely important to a business. For my message of health and fitness to have the impact which I seek my Web-site can be nothing other than SOLID. As a result, I will be looking for someone to help me recreate the GroceryCoach site. I do however plan to take on other development projects which are independent of my business site. Developing interests me and it is always good to have the knowledge so I will continue practicing the fundamentals on my spare time and will hopefully learn how to create drop down menus cause they make websites handy, I also want to learn about advertising and e-commerce sites as well as incorporating Amazon pages like the one Luis’s site. So much to learn and do, so little time.

Closing 

In closing, each experience in my life has made me realize that everything is much more similar than it appears. Foundational principles listed below apply regardless if coding, serving in the military, or Consulting for the Federal Government and/or Commercial companies

  1. When faced with a wall walk away, re-strategize and try again,
  2. Your thinking has a lot to do with results
  3. Thinking through the process before attacking is much more effective.

Cheers to Web Development and all its quirks! And remember to eat your veggies, get your sleep and reward your body with cardio!

It’s not over yet!

The class overall

In some ways, I’ve learned more than I expected to in this class, and in some areas, I’ve learned less. The local server/FTP setup was way, WAY more complicated than I expected it to be, and I still feel in the dark about the whole process, and surprised every time it works the way it’s supposed to. Part of me just thinks that, with legions of programmers, designers and UX experts using the system, somebody would have been able to devise a more intuitive way to make the interwebs happen. Still, I feel like I’ve internalized the WordPress editing process/taxonomies/codex far more than I thought I would. I feel confident going ahead with editing the CSS of my site, at least, and at least I know I’m capable of learning this stuff.

What I learned

I learned a great deal of CSS stuff that I’d never been exposed to before. I also learned the basic structures that make up the JavaScript and jQuery languages, so if I look at some script, I can probably figure out what it’s doing. I learned how to open the hood of WordPress and edit stuff outside the admin. I learned a lot about how computers and the interwebs work with each other.

Why what I learned matters

It matters not just because I’ll be able to do more and better web projects, but because a person who is web-literate is better able to find and distribute information – an integral skill in a democratic society.

What I’ll do with the new knowledge and skills

I’ll be able to make and edit websites without simply settling for the default options WordPress offers. I’ll be able to better communicate with the developers on my team at work and suggest new solutions to the problems we face. I’ll also be able to offer informed opinions on the quality and effectiveness of our web projects.

Thoughts on re-reading the initial readings

When I first read these a couple of months ago, I enjoyed them on a philosophical level, but still got the sense that I was on the outside looking in on something I didn’t quite understand. Now, I feel like I count as the target audience for these readings, like part of the “in-crowd.” It feels great.

What I want to learn after the class ends — either new skills/tools/platforms, strengthening current ones, a mix of both, a list of problems you want to solve, etc.

I want to continue learning jQuery, improve my CSS literacy, and look into Ruby on Rails at the suggestion of the developer I profiled. I also want to make a more complicated site on WordPress, try to emulate some cool online projects I’ve seen and try using some social media APIs.

Developer Profile: Rafael Reynoso

Rafael Reynoso, System Administrator at Lockheed Martin

Rafael Reynoso, System Administrator at Lockheed Martin

Rafael Reynoso graduated with a Bachelors of Science in Computer Engineering from George Mason University in 2012. He is now a System Administrator for Ballistic Missile Defense at the Lockheed Martin Corporation. He is currently pursing his Masters in Systems Engineering from St. John’s University.

What inspired you to get into Web Development and Computer Science?

I wanted to become a software engineer in 10th grade at Garfield High School in Woodbridge, VA. My computer science teacher had been in the Army and was trained in computer science. He always told really awesome stories about software development and it made the subject come to life. I remember him telling a story about how he had written code that was used to take down a missile. From that point on I was hooked. When I got to GMU I originally wanted to be a software engineer and that was strictly code, but I also really enjoyed working with my hands so computer engineering gave me the ability to use my hands and also write lines of code, the perfect mix of the two.

What is you single most favorite coding language and why?

My favorite coding language was Java. It was the second coding language I ever learned and it became an almost universal language for me. It incorporated assets from a lot of other languages. It was my favorite because I like the concept of object oriented programming. Before I learned this language, everything was written linearly and I think modular is a better way of writing code. It makes debugging a lot easier when your code is separated into pieces. It has a more real world approach. If you take a car for example, linearly you’d have to write, turn the key > shift into gear > press the gas pedal > turn the tires > move the wheel. Everything is dependent on the other, by writing code for each piece if one thing breaks you can go in and change that piece instead of going back through and adjusting everything.  I also like that Java runs on a lot of different devices and it is very easy to create a GUI (Graphical User Interface.)

What’s the longest you’ve spent debugging a piece of code you’ve written?

The longest I’ve spent debugging a piece of code was an entire three days. It was a project while I was in school and I slept an entire eight hours for the entire three days. The most frustrating piece of debugging is just when you think you found the solution and then you adjust it and it turns out that you were wrong. It’s like giving yourself false hope over and over again. What’s even more frustrating is when you find the solution, it makes you feel dumb that you could have miss-typed a letter, and even worse that you didn’t find the mistake after staring at it for hours.

What’s your favorite web development tool?

I’ve been getting into mobile application development in my spare time. My favorite development tool is Phone Gap. With so many devices and file types out there, this program eases the transition from one platform to the next. They have a developer forum as well with a great active community that speak in plain english for self taught first time developers.

What’s the most enjoyable project you’ve ever built?

In my Masters program we used Visual Basic Programming Language, which is a language for creating applications for Microsoft Windows. We were interfacing with the Microsoft Kinect and we connected two Kinects to one computer to monitor a bigger space. We used them to monitor the movements of robots we placed on a field. The idea behind it was if there was some type of emergency situation like a school fire drill and you put all the children in a field monitored by the Kinect, so that the limited staff can tend to the emergency situation instead of using those human resources to babysit the children. Should a child/robot leave the field we set up an alert system that would alert a phone with the application we built installed on it. It would increase efficiency in a emergency situation leading to possible saved lives.

How often do you come across code during your day job at Lockheed?

Almost everyday, even when I’m placed in a role where I don’t think I will be using code. I find myself trying to simplify processes using code. On one team we received a large data set of errors from certain programs. We then have to take those errors and remove the duplicates, and finally prioritize them by typing them into excel. That process often took an employee 20-25 hours to go through that information and prioritize the errors in order of importance. I wrote a piece of code that did the entire process and now writes the errors in excel in a fraction of the time. It was my biggest accomplishment at Lockheed thus far because it has been used a dozen of times in different verticals.

You mentioned you were self-teaching yourself more about mobile application development. Why the sudden interest?

It’s timely for me because it’s so prevalent in the market today. It’s important for me because I want to stay relevant in my industry. Having a life-student mentality is crucial because if you don’t adapt to the changes you could be rendered useless in your own profession. It also gives me the opportunity to have a side job to pay off all my student loan debts a lot quicker.

What’s your favorite website?

The content on Wired.com makes it my favorite website. I recently read an article on connecting the brains of mice and transferring information between them. Another favorite of mine is the Space Jam website. It really shows you how far web development has progressed.

Inception: Coding Philosophy

Thoughts on re-reading initial readings

I’ve always enjoyed first perceptions and seeing the beauty in everything the first go around. I’m not the type of person to film experiences because it takes away from enjoying the experience and making memories. I do my best to avoid watching movies over again and I’ve never gone through and re-read a book in my entire life (including Dr. Suess). The movie inception was an interesting one because it involved planting a seed or memory in that of another person.

Going back and rereading these articles with a certain type of experience has completely changed how we perceive these articles. It’s like an entirely new first perception and experience going through these coding language articles.

In my first analysis post  of the summer I made a comment about how the Pragmatic Programmer Quick Reference Guide was anything but quick. Through an inception of sorts and becoming literate in programming terminology it was a quicker read than the first time I read it. It all made much more sense and it should continue to make more sense as I continue to learn about web development.

What I learned

While we never got the chance to learn and practice python the philosophy rings true for other languages. The concept of abstraction and writing modularly is a concept that I’ll continue to use in everyday life. Making everything independent of itself should lead to less complication should any one thing fail. Writing code linearly or dependent on itself could lead to hours of frustration.

Why what I learned matters

Abstraction applies to everyday situations like balancing school, work, personal, and gym time as independent times and forcing one time into another can possibly lead to negative results. I’ve been known to forgo the gym during a tough week at school or work. Scheduling time well in advance for gym, school, and work should lead to better time management and productivity.

I’m thankful for this class because I really feel like I’ve learned a tremendous amount about the web development process. The tools that we’ve learned like GitHub, Sublime, Command, MAMP will really help me communicate with web developers and should a problem arise that they can’t dedicate their time to I feel confident enough to go in and make changes and update to the live server.

What I’ll do with new knowledge and skills

Reducing project length time from agency processes is always a struggle but it now feels like I have the tools and skill set to do so. This is invaluable as a young online marketer to really understand the web development project life cycle. It’s an asset that not many people have or are willing to learn so it should assist me in professional ascent. Perhaps my next endeavor will be partnering with someone for a mobile application.

The Class Overall

This program to me has always been a measured risk as a professional studies degree. It’s still unknown whether the cost of the degree will be worth the monetary and time investment. It is a very practical degree unlike an MBA, but the negative side of that has been some fluff courses like Social Media. Some of the courses in this program have only solidified what I already knew or gave me some minor insight. Unlike those courses, this course has taught me a tremendous amount that I will be able to use in everyday life.

What I want to learn

  • Python
  • Ruby on Rails
  • Mobile App Development
  • Strengthening knowledge of what we’ve learned already

Rob’s Interview with Google Search

Screen Shot 2013-08-04 at 9.01.11 AMIt is perhaps the most identifiable screenshot ever taken from a computer. The Michael Jordan “jump” logo of the Internet. For over a decade it has served as a door for billions, into a new world with endless possibilities and information. A world without demands, and one without prejudice. With its simple design and single fill-in field, Google Search asks only one thing of its visitor: Where do you want to go?

Since 1998, Google Search has received billions upon billions of answers to that question, using some of the most complex coding to provide its answers. However, everything that makes Google Search work its magic has been humbly hidden by its single, and mostly blank page. The process is transparent to users. Aside from the occasional defacing of its brand logo, Google Search has stuck to its simple and original approach to coding: “I’ll worry about the back end. You just enjoy yourself.”

So on August 4, 2013 I sat down to ask Google Search a few questions of my own, about the future of web development, why it matters, and how our lives will continue to be shaped by the greatest communication tool ever known.

Disclaimer: Google Search is not an actual person or web developer. This was a mock interview conducted using Google Search to answer the exact questions you see below … because I don’t know any web developers. Enjoy.

You’re an Internet giant. You answer more than 60% of the world’s questions. How does Google Search handle the workload?

This is a complex question, and honestly one I don’t get asked too often. So serving a Google query is truly a multi-phased process that begins with multiple clusters that are distributed worldwide. This helps me get the answers as fast as possible. Let’s say you want to know something about “society.” I’m going to check terabytes and terabytes of raw documents for your answer, after spell checking it of course. This is uncompressed data, mind you, so the index results are terabytes as well. Then I’ll form that data into pools that are split amongst several machines, which will back each other up in case one goes down during the process. It is a very efficient process, and one designed to serve the user the best results as quickly and reliably as possible.

You seem so simple in person, though, not complex at all. Why the plain appearance?

Ha! Now you are getting to the juicy stuff. The truth is that I didn’t know much about coding when I first entered the scene. I didn’t have a webmaster, and I didn’t really do HTML. So I put together the simplest design I could in order to test myself out. I didn’t even have a search button back then, which is kind of embarrassing. The enter button worked just fine. I remember I met a group of Stanford students one day, and asked them, “What would you guys like to know?” They just stared at me quietly. I asked them, “What are you waiting for?” They said, “The rest of you to load.”

Have you ever considered advertising?

You know, I was going to Starbucks the other day to check on some guy’s rewards account, and I saw this young man waving a sign around on the side of the street. I think it was for Domino’s or some mattress sale. I thought to myself, “I could do that, and I could probably make millions a day.” The truth is businesses would love to run an ad on the most visited webpage on the Internet. But that’s not what I want people to know me for. I’m not here to let the world invade your life, rather I’m here to let you invade the world.

You have been accused of collecting personal information from your users, though. Doesn’t Google Search collect personal information?

Yes, I do retain some log files that record search terms used, websites visited and the Internet Protocol address and browser type of the computer for every search I conduct. However, I have a policy of making money without doing evil, and I believe that infiltrates every bit of coding that makes up my existence.

So then, what’s the future of web development?

Wow, I can think of about 207 million things in about .44 seconds that could answer that question. Some people think responsiveness is the future of web development, but I disagree. I really think the future of web development is in web components. I think this is a technology that has the potential to change how developers write web apps. What web components do, essentially, is give developers an easier way to great websites and recyclable widgets on these sites with the help of the HTML, CSS and JavaScript they already know. This is a completely new way for developing web applications, but I think it will open the door for more developers and speed up the browsing experience for users – which is right down my lane.

With the creation of websites such as CodeAcademy and Treehouse, the doors are opening for people to create their own sites using stable platforms such as WordPress to build from. Will there be less jobs for web developers in the future?

Smashing Magazine actually did a good piece on this, where they discussed the future of web designers and developers. They even threw me in there, claiming I want to take over the Internet. I think there was a lot of truth to what they said, however. It’s true that sites like WordPress, Facebook, and even I can aggregate much of the content that would otherwise be spread across the Internet. And with a single design, it doesn’t leave much room for independent design. However, that doesn’t mean the field will die. The Internet is an ever-expanding and living thing, therefore there will always be room for people to make it a vibrant and fulfilling experience. Content is growing at an exponential rate, as more and more people use the Internet to communicate and help them with many aspects of their lives. Someone has to help keep all this organized, and I certainly can’t do it on my own. The most important thing is for those who want to work on the Internet, is to stay up to date and be willing to change. The basic concepts will always be there as a foundation, but the surface is ever-changing. If a web developer remains engaged and forward-thinking, she will undoubtedly be included in the future of the Internet, through all of its transitions.

This Interview was conducted by Rob Snyder for Web Development at Georgetown University’s School of Continuing Studies. For more about the future of the Internet and web development, or to ask Google Search your own questions, visit www.Google.com and type in your question.