Category Archives: 2017 Summer class

Practice, Practice, Practice

Web Developer Profile – Jamie Newell

For my midterm, I profiled a coworker’s husband, Jamie Newell, who works for Discovery Communications, or as many know it, The Discovery Channel a.k.a. SHARK WEEK! But Discovery also owns TLC and Animal Planet, among many other popular T.V. channels. Jamie has been a web developer there for 3 years at the headquarters in Silver Spring, Maryland. Prior to joining Discovery, Jamie was the Director of Web Development at Amplify Public Affairs in Washington, D.C. for 3 years, and before that, spent around 11 years doing freelance web development in the area. I asked Jamie to tell us about his journey to becoming a full stack developer.
//* What is your current job/title and what do you do for Discovery? 
My title is Web Developer and I primarily develop websites and interactive learning modules. Our website is very interactive by design, which was one of the reasons I chose Discovery! *//
//* What programming language(s) and CMS do you use for work?
Well, of course JavaScript as I just said, but at Discovery I also use HTML, CSS, and PHP languages, and work a lot with Drupal and the React JavaScript library. *//
//* How did you get into web development? What drew you to it? 
I messed around with programming growing up and enjoyed the challenge of solving technical problems, along with the satisfaction that came from creating something. In my early 20s I volunteered to create a website for a recording studio that I was working for at the time and decided then that I would pursue web development as a career. *//
//* Is that still the same reason you enjoy it today? Or has it changed with time? 
Yes, the challenge of solving technical problems is still what I enjoy about web development. It’s true — even someone with years and years of experience still encounters new and tough challenges when programming (more often than you’d think!). The problems are just often more highly technical.  *//
 //* If possible, can you recall some early struggles you had learning languages/programming and offer any advise to us newbies? (Anything you can think of that helped you succeed.)
My biggest struggle in the beginning was not being able to find answers to my questions. At the time, there were very few online resources to go to for help, so I spent a lot of time experimenting. While finding answers, tutorials, and examples is much easier nowadays, I would still advise experimenting. *//
//* If you had to pick, what would you say is of your favorite language and why?
At the moment I am enjoying working with the recent versions (ES6 and later) of JavaScript. There is always something new to learn and to manipulate. *//
//* Can you describe a favorite development project and detail (high level) how you built it? 
While working at Amplify, I designed and developed a collection of highly interactive advocacy tools that I integrated into our clients’ WordPress and Drupal sites in order to engage users and encourage them take action in support of a cause. The tools were built with PHP and JavaScript, and would push and pull data from the APIs of social media platforms, geolocation and mapping platforms, third-party advocacy platforms, and the Sunlight Foundation, to name a few. *//
//* How do you stay up to date on the latest in the programming world? Blogs? Websites? Programs? 
By spending time reviewing projects on GitHub! It is a great resources once you figure out how to navigate and utilize it. *//
//* Any other insights you’d like to share with the class? 
The industry advances very quickly and it can be overwhelming trying to keep up. Many of the shiny new languages and frameworks do not stay popular for very long so stay focused and don’t jump from one hot framework to the next. Experiment a lot with the language you are already learning and build from there. HTML, CSS, and JavaScript (and jQuery) will outlast us all. I’d say to all those learning the ropes to just practice, practice, practice! *//
A huge thanks to Jamie for taking the time to provide us all with some words of wisdom. It was encouraging to hear him say he uses the same languages we are learning now in his daily work. I know I have a long way to go, but this made me feel like I could talk about his work with him — I now have the basic tools/words — and maybe, one day, work alongside him. We are only halfway through the semester and I’m already seeing results!
I can only imagine how difficult it must of been for Jamie to teach himself how to code… And it made me think about how much I have been relying on Google. I know Greg encourages us to search for answers to our problems, and it makes sense since the resources are so readily available, but perhaps going forward I need to experiment and fail a couple times to really learn. I will say that Codecademy gives us the opportunity to experiment a couple times in each lesson, and I have found that by try 3 tries, often, I will finally get it correct. The failure forces me to really scan the code I’ve written looking for errors.
The project Jamie worked on for Amplify really struck me. I work in cause consulting so I was able to really connect some dots and see how a tool like that would have a huge impact for a non-profit or advocacy group. His example got me excited to learn PHP next week and got my brain cogs churning in thinking about a possible final project.
I laughed when Jamie said he uses Github as a resources to stay up to date on all things web development and to learn new techniques and tricks from colleagues. I think I found it funny because Github seems so abstract and mechanical. But in understanding how it works to some extent, I can see how reviewing others projects could be quite helpful. Sounds sort of similar to inspecting webpages to see how certain things were coded.
The insight Jamie left for us is poignant I thought. It was the first or second class when I asked Greg why everyone isn’t using Apple’s programming language, Swift, because like all things Apple, (I’ve read) that it is super user-friendly and clean. I think I even asked if there may be a future where there is one universal, open-source language… but that is for another time. I appreciate how Jamie warns of the “shiny new languages” and says to instead keep practicing the “oldies.” That is just what I plan to do!
I really enjoyed this exercise and hearing from a web developer in the field. I can’t wait to read everyone else’s profiles or project descriptions this week — and see what advice or take-away they provide.
Cheers,
Jane

Words of Wisdom: A Q&A with Two Developers

For my web development Q&A, I interviewed two developers: Zach Howe, an iOS developer at Mobolize, a start-up in California and Alan Florendo, a web developer at Asynchrony Labs. Both are interesting people because they took different paths to do similar jobs: Howe forewent university to become a professional developer while Florendo formerly worked as an accountant and attorney before deciding to go into web development. Both offered insights on how to master coding, how to get better at it and how to pursue a career in technology and web development.

Alan Florendo, a lawyer-turned-web developer

How did you get into web development?

ZH: I was interested in computers from a young age. I taught myself to program early on. I was in high school, I wouldn’t do homework, I would go home and code. But I learned how to code.

AF: It’s a weird story. I used to be a lawyer and my husband was in grad school and when he graduated, he moved to St. Louis and I moved with him. I never liked being a lawyer. I decided to move with him and not practice law anymore. I started working out a lot and the guy I worked with went to a coding bootcamp and learned a lot of what you are learning. The purpose was to train you to learn enough to get you a job afterwards. I always tinkered with computers, followed suit and took the career path of this guy. I’d worked as an accountant before I was a lawyer. I did a lot of work with Excel and databases and converting data into large Excel spreadsheets. I had a background both in databases and understanding them in a rudimentary level and programming them in Excel. I had a couple courses in high school that stuck with me pretty well. I had basic principles and when the opportunity came around, it kind of all clicked.

Where do you work now and what do you do exactly for them?

ZH: I work at a startup called Mobolize. I mostly do mobile development now and I got started with iOs. I’ve been in mobile since I started.

AF: I work at a software consulting called Asynchrony Labs. I’m a software consultant. We work at long-term projects. We are contracted out for 3 months to a year to build software projects, Android apps, enterprise systems and consumer-facing systems. I build web apps for them.

What’s your favorite development project you’ve worked on?

ZH: When I worked at a company that built an app that was large with a lot of users, it was awesome to use and that people outside my company used it at my work. That made it exciting. When we built this up, millions of people used it. It was at Fandango, and millions of people used the app. It was awesome to see that I was making something and millions of people would use it. To know that many people would actually see your work, instead of something that would be buried on the app store.

AF: I’ve built some games. There’s a lot of complexity in games.

What projects are you working on now?

ZH: It’s really just one I work on. They’re all kind of interrelated though. So I work on an app with Sprint. It deploys on their app store. They vendor our app, which we build for them. It’s a secure app—whenever you get on public wifi that’s not secure or isn’t Starbucks where people can listen on traffic, we build a software on Apple or Android that would encrypt that data on demand where you wouldn’t have to do anything at all. I worked at Trucar on their mobile application for iOs. It’s all about the same stuff – basically mobile front-end to their website, companion apps to their websites.

AF: I work on a job recruitment site for a financial institution—pretty simple, listing their jobs and what they do, but there are a few additional hoops people have to get through so we program those.

How difficult is it for people to learn how to code?

ZH: I think people can learn it better than they think they can. It often looks intimidating but you learn it bit-by-bit and it takes time and you begin to understand it a lot better. At some point, everything just clicks. The more and more you go and do it, the easier it gets. It just takes time to get good at.

AF: There are a lot of coding bootcamps and there’s concern too many people are learning how to code and not enough. It’s easy to learn how to type something in and make the computer do something. It’s more of a skill to do something in a manageable way. It’s one thing if your little game works well and you don’t understand the code in a way. But if the code is written poorly, it can require rewriting the whole thing to make a simple change. You have to distinguish between writing manageable code and writing something that functions.

What is the best advice for people who want to go into web or mobile development?

ZH: Jump right in—solve the problem you want to solve. From a learning perspective, you can’t jump in all at once and be able to do everything. Don’t expect to build the biggest app ever or Facebook overnight. That’s a massive project. A lot of apps I work on don’t happen overnight. Try to find something you want to build yourself and you have a use for. Those kinds of things are easy to navigate through. If you don’t learn as you go, you will never go off the ground. Find something you are passionate about and stick with it.

AF: Think about why you want to go into web development – is it the design portion of it? The coding portion of it? You can’t learn everything at once – try to learn some sort of depth into the skill first before going into anything else.

 

Cool people. Awesome development tricks.

This week I got to talk to someone I really admire at The Post. My Q and A with Matt Callahan was a really nice way too see the “after” of what you can do in web development. I very much am in the “before” category, so looking at all the amazing enterprise pieces that Matt had a hand in was an education in itself.

We’ve been toiling away learning the foundational lessons in coding, and this was a really nice break to see how far we’ve come and where we can go with this. Like many of my classmates have mentioned, a lot of our work can feel overwhelming but to see someone else who has used this platform and made amazing storytelling vehicles was a nice way to see the forrest from the trees.

As for other work, the slideshow was a pretty hard assignment. I asked around for some tips and help, and without that I honestly don’t think I would have been able to complete the assignment. Going over it in class was helpful, but it would have been better to go over it on the outset. Again, I understand that the aims of this class aren’t to spoon-feed us, but it would have been extremely helpful to have some footing before we began the project.

I am relieved to hear that the class takes a pivot now to longer projects. I’m looking forward to thinking about final projects, and trying to conceptualize what I can do after learning the basics in development. I still think that I’m interested in front-end design, and making things look pretty. It would be really cool to design something for The Post that we can use for the fine arts team, but I’m going to continue to mull what my options are. Until next week!

My Interview Process with Greg Collins

The web developer that I interviewed was Greg Collins. Greg is the former chief information officer at EarthLink. Due to unfortunate circumstances EarthLink went through a series of layoffs, which left Greg without a job. Greg now works as a freelancer in the Atlanta area.

Interviewing Greg was very interesting. I found him through linkedIn as a friend of a friends. I asked him if he would mind speaking with me on the phone for half an hour and he said he would be glad to.

As we began our conversation I was instantly amazed that Greg didn’t begin his career in tech, he actually worked in retail as a store manager. His interest in coding and tech began much younger however.

Greg grew up in the suburbs of Tennessee where there were no real coding or web development programs in place. He was first introduced to the web world when a new teacher came to town with a web development background and began a coding club. He was instantly drawn to the club and became a regular at the meetings.

After high school and into college Greg self-taught through different books and mostly trial and error processes. As he was working as a store manager he thought that he might have some talent in the web development business. He sought out a job as a coding expert that came with employment training. From then on, that is what his work has consisted of.

Throughout our conversation I was very interested that the first type of coding language was BASIC, something I had never even heard of. He said that HTML was too futuristic and he didn’t learn that until his employer trained him.

Later in his career Greg turned to app development, which is what he focused on at EarthLink. He claims that the type of coding is very different, but still likes to focus on creating clean code.

Overall I learned a lot from Greg!

Excellent Discussion with Chamber Web Developer

This week’s assignment was my favorite thus far, partially because it used more traditional communications skills (e.g. interviewing, synthesizing, writing, etc.), but also because it reinforced that learning to code is not easy. Sarah Howe, the web developer I spoke with, talked extensively about her experience learning to code—noting it was a lot of trial and error, frustrating assignments, and a constant growing pain. When I discussed my frustrations with my experience thus far she reassured me my feelings were normal and with time my emotions would transition from infuriating, to frustrating, to exciting.

It was also reassuring to hear someone say this that now makes a career out of coding. Sarah is not just an individual that codes on occasion, her entire profession is based around web development, so if she struggled at the beginning that is really is only natural that I too am struggling a bit.

She also pointed out that you are never really ‘done’ learning to code, the way you might ‘complete’ another assignment. She said she is constantly learning new pieces of code, and there are a lot of things her coworkers handle that she does not understand. I had not thought of coding as something that can branch off into different practices in the way that public relations can break into different professions (e.g. media relations, social media, corporate communications, etc.) After speaking with Sarah, however, I now realize that there are lots of different ways someone can work in web development or coding. They can be back end, front end, client facing, management, or numerous other positions that all require knowledge of coding and web development, but to varying degrees.

I really enjoyed this assignment as I think, up until this point, we have been very focused on micro level coding and this was our first big picture look at web development. Rather than focusing on specific lines of code, we spoke with someone who enabled us to see the big picture of web development, including what you are trying to achieve with coding, the different career paths you can pursue with this knowledge, and the larger scale considerations you have to keep in mind when working on a site.

Midterm Q and A: Matt Callahan

Matt Callahan is an Art Director at The Washington Post. I sat down with him recently to talk about how he has used his work in the design department to modernize The Post digitally, and use different approaches with big stories. Matt has recently worked on pieces about the Galapagos, the slow death of the electric guitar, and an interactive approach to the National Parks’s 100th anniversary.

Some of the answers have been shortened for both length and clarity.

Would you describe yourself as a coder, art director, or journalist? Or a mix of them all?

I’d describe myself as an art director foremost. My greatest strength I find is conceptualizing ideas and finding the most effective manner of communicating an idea. What I find most exciting about web development is being able to carry out these ideas and concepts in new and different ways. Furthermore, you get to communicate with people with an immediacy that is unlike print. You can reach them on their phone, computer, tablet and do it all instantaneously.

When did you start coding?

My first class in computer programming was in high school in 2007. I took a course in C++ as a misguided attempt to learn Photoshop (the person I knew who was most skilled in Photoshop had just taken that class, so…). That said I didn’t use coding in any real capacity outside of class or personal websites until I worked at The Post — end of 2014.

What’s more important, good storytelling skills or coding skills, when taking on a custom project?

Good storytelling skills are imminently more important. You can always pick up the actual programmatic skills. Understanding how animation works and what function it provides, versus images, versus video versus audio is something you can learn from watching and listening, but it is hard and takes practice. If you understand how it works you can communicate ideas and work with others to help create an overall vision. If you just understand the tools you’re at the mercy of someone else’s idea.

 What’s the most valuable thing you know when it comes to coding?

Sketches and rapid prototyping. Never get too near and dear to your first idea or version. Honestly, don’t spend much time working on it — do a sketch with pencil. Envision it. Think how someone will approach it. Then do a quick wireframe. Then an unstyled HTML doc. Don’t worry about how it actually looks until it works right — because people actually need to read it and use it. Otherwise it’s design for the sake of design — which is neither functional nor useful.

Let’s move on to more specific projects you’ve worked on recently. Which enterprise template were you most proud of?

The Marine story was probably one of the pieces I’m most proud of. It was an opportunity to explore so many different modes of storytelling all within the same story. I was able to be so close to the project because I was brought in just as the story was being rewritten. I had almost-daily meetings with the reporter, John Cox. We talked about what shape the story was taking — and he understood that I cared about telling this story every bit as much as he did. When the reporters know that you care and how much you care, you can have conversations and arguments, discussions, and it’s okay because you’re all playing for the same team.

With the Galapagos template, how long did that take to construct?

The Galapagos story was probably about two months or longer in total planning time. Though not all of that time was spent actively working on it, and it wasn’t my only project (I was designing travel on a weekly basis as well). Most of the time was spent trying to just get our heads around what this story would be. Then some time on how to conceptualize how to tell this story — whether it would be map based or story based, and how to navigate from video to video. Later we ran into the technical limitations of 360 video, which included probably a week of just last minute bug squashing and changing out a video player just a few days before publication.

And finally, were you surprised that the national park “find your park” interactives were so popular?

Certainly — though gratified might be a better word. This one in particular was a very long term project. We started brainstorming ideas for this at the end of 2015 and it didn’t run until summer 2016. We’ve talked about it since and we could and Alexa, Nicole and I don’t remember who came up with the idea of checking in or logging which parks you’ve been to, but we all loved the idea — especially because national park lovers are very devoted and very passionate. This was also great fun because I got to help shape the length of content and what type of content we wanted alongside Nicole, which made it a truly great experience.

Takeaways: Talking to Matt was really helpful. He’s someone I’ve seen in the newsroom, and he always has his computer open with JavaScript. It was really exciting to learn that a lot of the mold-breaking stories The Post has done involve his handiwork. He had a really cool approach to web development as well. Like he mentioned, attention to storytelling and the end goal are paramount, and you can learn the code along the way.

Developer Profile: NPR’s Wes Lindamood

For the profile, I reached out to Wes Lindamood, who works as a senior interaction designer for National Public Radio. 

What made you decide to pursue a career in web development?

I graduated from college 17 years ago. Man, I’m getting old. Anyway, when I was in school, I had a strong interest in journalism, graphic design, and advertising. Unsure of how to combine my interests, I turned to an amazing advisor, Dr. Cassandra Reese. It was her wise counsel that guided me to the interactive multimedia program in the School of Visual Communication at Ohio University. I was immediately captivated by the potential to tell stories and build experiences with code. I’ve been working at the intersection of journalism and design ever since.

Wes worked for several other organizations before landing his current job at NPR in 2010. Before joining the NPR Visuals team, he worked as a platform and enterprise story designer for USA Today and as an art director for the American Chemical Society, where, among other things, he worked on the organization’s website and on producing its online newsmagazine.

What drew you to work as a web developer for NPR?

Quoting Congresswoman Shirley Chisholm, Michel Martin has said that NPR is “unbought and unbossed.” The phrase “unbought and unbossed” was Chisholm’s presidential campaign slogan, and when applied to NPR it means that the public, not shareholders, own us. Our mission is to create a more informed public, and make our work as widely available as possible. That mission not only influences our journalism, but the code that we write.

How has your time at NPR influenced your perspective on web development?

I’m fortunate to work on a team that believes in open-source software development, and freely sharing what we know. The code we write has been used nationally and internationally to tell stories of protest, war, and the fight for freedom. The ethos and work of the open-source software community has been hugely beneficial to me over the course of my career, and my appreciation of it has only grown in my time at NPR. I hope my contributions have helped make the community stronger.

Some of the digital projects Wes has worked on at NPR include:

  • Project Argo – a reporting collaboration between 12 NPR member stations hosted on an open-source platform Wes helped build;
  • Life After Death – a digital story exploring the aftereffects of Ebola in the village of Barkedu in northern Liberia;
  • the award-winning documentary Lost and Found, which looks at the life of photographer Charles W. Cushman;
  • and (my favorite) an episode of NPR’s Planet Money podcast, titled Making a T-Shirt, which takes an in-depth look at the creation of a single t-shirt. The Planet Money web documentary was a collaborative effort between the visuals team and the podcast’s staff. In an explanation of the project, Wes described the teamwork, stating, Often in editorial settings, the design team is brought in after the story has been reported. I cannot emphasize enough how important it was to this project that the entire team was involved in this process from the beginning. Collective brainstorming sessions were crucial to forming a shared understanding of the story to be told. It allowed reporters to consider content that would lend itself well to a web-native experience while they were in the field, and allowed the design team to begin to consider the presentation of the story, even as we were working on other projects.

Outside of NPR’s work, what is your favorite website or digital story project out there right now? 

I discovered Robin Sloan’s app, Fish: a tap essay, at a time in which I was reflecting a lot on the kind of work and storytelling I wanted to do online. In the essay, Sloan asks us to think about the difference between liking something on the internet and loving something on the internet. Sloan’s thoughts about stock and flow, and the need for durable stories that stand out from the constant stream of news has had a huge influence on me. I continue to think about how to apply the principle of stock and flow to my work and my life on a regular basis.

What advice do you have for someone like me who is just beginning to learn how to code?

I think there’s a false belief by folks that are just starting out that experienced programmers write all their own code by hand. This belief is reinforced by bad hiring practices, and it’s simply wrong. Experienced programmers look up code snippets on the internet all the time. Taking an existing piece of code, dissecting it, trying to understand why it was written the way it was, and then adapting that code for your own use is the best way to learn. Bonus points if you write about what you learned, and share that with the community to pay it forward. 

Like our class, Wes uses GitHub as a platform, and you can find samples of his code there, as well as work from the NPR Visuals team.

Q and A with Lauren Soni, Janelia Research Campus Web Developer

Lauren Soni Fraino

Lauren Soni Fraino is a young web developer new on the scene after a career in science research. Her path to web development encompasses the movement toward powerful women, and her experiences with graduate school at Northwestern University, the National Academy of Sciences, and Janelia Research Campus have led her to encompass everything digital.

This interview and my interactions with Lauren make me appreciate web development and web developers more. It is crazy how much work goes into the successful development of a website and one that focuses not only on aesthetics, but also on the user experience. My conversations with Lauren, as a result of this midterm project, additionally, gave me hope for my future in coding and web development. She was able to express her trials with learning how to code and looking at websites in a different manner. One of the things that stayed with me after this interview was that being a “coder” does not happen overnight. It is a long journey of continuously refining your skills. But there is hope–she helped instill that hope in me. Not to mention, she admitted that she, too, scours the internet for code guidelines and examples. So, we are not alone!

The following is a Q&A interview with Lauren Soni Fraino about her experiences entering the world of web development and her experiences working in a digital world.

[Note: the interview below has been adapted for length and clarity]

You’ve had an interesting journey to becoming a web content specialist and web developer. How did you decide to move from science research to web development?

I started off as a biologist, and quickly realized that I was better fit for asking and answering questions quickly within my reach. While working at the National Academy of Science, I realized this newfound aspiration of mine, and began working closely with my team’s web designer and web developer. I had the knowledge and insight of what content would appeal to prospective users, but I wanted to build and design experiences that would meet the user’s needs. This realization is what led me to my current career path—designing and developing digital experiences for those interested in expanding upon their knowledge of basic research within the life sciences.

What advice do you have for new web developers looking to learn the ins and outs of coding in different languages? What’s your favorite language to code in?

As a designer, I thoroughly enjoy working within CSS. I enjoy being able to have content laid out in front of me, and the opportunity to creatively display that content in an engaging way. Often times, this means adding page specific—or even site-wide specific—content in front of me where I can apply styling that will engage a user’s attention and captivate them based upon how I have styled specific content. As a designer/developer, I strongly suggest continuous practice of a specific language, without becoming discouraged by immediate results, to ensure self-satisfaction throughout a project’s duration.

Where do you see the web development and user experience industry in five years? What about your own career?

I anticipate web developers and user experience professional working more and more closely together.  Nowadays, the two practices are disjointed, but in an ideal setting these types of professionals would work closely together. It is the responsibility of the user experience professional to gather and collect specific research to inform the user of a specific digital product, and for the web developer to produce this product. Without this harmonious approach, the two practices would have little contact with each other, and would result in unnecessary spending and product research.

To date, what has been the most interesting web and/or digital project that you’ve had the opportunity to work on?

The most interesting digital project I have worked on has been designing and developing a solution to help meet the needs of exposing our research institute’s advanced imaging center. Throughout this project I served as a designer, and lead digital project manager, to create a solution to pair those interested in working with Janelia Research Campus with a specific imaging tool, such as an advanced imaging microscope. This Buzzfeed-like quiz allowed us to create an engaging experience to pair users with the ideal imaging platform to meet their research needs.

What types of projects do you hope to work on in the future?

In the future, I hope to be a part of a project that focuses upon the user’s initials needs, and designing and developing a project with the user in mind. Often times, various political landscapes and organizational needs will cloud a project’s future. My ideal project would focus on a user-oriented product that would solve for a user’s needs with room for that solution to evolve as the user’s needs evolve in time.

What’s your most visited site? Do you ever get content and development ideas from it?

My most visited website it thenextweb.com. Because this website shares best practices as it relates to web design and development, I often get inspiration from this website to help shape the design and development of specific projects I am working on.

If you could be any superhero with any superpower, what would it be and why?

If I could be any superhero with any superpower, I would be Wonder Woman with her ability to use her Lasso of Truth to help inform my decision-making processes. If I had this ability, I would use [interviewees] to better inform my design-decision-making. It is a valuable practice to test assumptions on users before having developers devote time to producing a specific solution. If I were able to persuade users to provider their honest opinions of a particular product during initial user testing, I would be able to work more closely with the development team to produce a product that was more in-line with the needs of our users.

Developer Profile: Dave–Consultant and Freelance Web Developer

Dave is a consultant and freelance web developer who does both front-end design for applications that provide analytics and marketing landing page design. Due to the sensitive and confidential nature of his government contract work, he has asked that I refer to him by his first name only. Dave is currently employed at a small consultancy in Virginia, and in his spare time, he does freelance web design for several small companies based in the Baltimore and Washington, D.C., area.

Prior to earning a bachelor’s degree in computer science, Dave taught himself basic HTML when he was in middle school, and later took a few programming classes as a high school student. I connected with Dave through a colleague, and he was kind enough to answer a few questions about his experiences and career as a website and applications developer. 

How did you become interested in web development, and how did you get started in the field?

I was always interested in software development as a creative outlet. I originally got into engineering because I wanted to develop video games, but became discouraged from pursuing that as a career before completing my education. While in college, there was a lot of [negative] publicity about people in that industry being overworked and underpaid. My brother is also an engineer, and he recommended that I interview with the large government contractor where he was employed. They gave me a fine offer, and I accepted it and did many years of uninspired work.

When the iPhone was released, I again became interested in software as a creative outlet. The proliferation of the iPhone seemed to have led the government to take an interest in better designed, better looking software. This led to me joining a smaller government contracting company and working on projects that involved a lot of web design, which was the closest I could get to doing app development while retaining career stability and my standard of living.

What’s your favorite project you’ve worked on? What about your least favorite project? Can you explain what made these projects your favorite/least favorite?

My favorite project was a single-page web app for a government client. It was a very complicated application, but I worked on a small two-person team with someone for whom I have a lot of respect. We accomplished a lot in a short amount of time. I found a lot of joy in this project because of the sense of accomplishment that came from designing and implementing a full-fledged product with such a small group and over a short amount of time. It taught me a lot about how important good chemistry is when working on teams, and how truly beneficial it can be to have assistance from others when working. It also taught me that nothing is insurmountable when you are in the right situation.

My least favorite project was a large government project that involved maintaining a poorly designed contracting/procurement application. It was not enjoyable because there was no expectation or desire for quality and efficiency, but rather, we were expected to follow a flawed process full of red tape.

What is your preferred programming language, and why?

I have been enjoying working in JavaScript with the AngularJS framework, because of the speed in which you can create a well-functioning, highly-visual output. Familiarity with CSS has also led me to be able to develop something aesthetically pleasing with relatively little effort.

What are your favorite customizations or features to add to your sites or applications?

I like sweating the details. For example, making sure that a site functions under all resolutions, like the smaller iPhone SE, which web developers frequently omit and as a result cause undesired scrolling issues. I also like to make sure high-density screen resolutions are properly supported, so that images aren’t blurry and upscaled. These are the kinds of small details that exhibit that care went into development.

What are the best and worst things about web development?

The best thing is when you make a minor CSS tweak and it makes the entire design click into place. Something like a font weight, or border, which turns a decent design into an excellent design. The worst thing is the sheer volume of web frameworks and buzzwords in the industry. I have no interest in always using the newest, trendiest technology, and web development is fraught with that.

Can you share any helpful (free) resources or tools for debugging a piece of code?

I’m typically able to complete all work using Stack Overflow for consultation, and the Google Chrome Development Tools to debug code and layout issues.

What sites do you have bookmarked to refer to when coding a site or developing an application? You mentioned Stack Overflow–why is that a go-to site for you?

I always start with a Google search, and then favor any results from Stack Overflow. I find Stack Overflow to be the most useful because it is self-correcting. There are several different ways to solve any programming issue, and their ratings system is an easy way to evaluate the answers that present each method. It’s also helpful to have comments embedded from users right next to the answers, which will warn you about possible pitfalls in using that approach. The one exception to my “Stack Overflow first” rule is when I have a more generic question that has a lot of components to it–something like “how to get started doing [x]”–in which case posts from independent blogs tend to be more useful because they’ll provide detailed walk-throughs with plenty of lists and screenshots to assist.

In your opinion, what qualities make a successful web developer, and why?

It helps to be a perfectionist. There are a lot of different operating systems, browsers, and devices to support, and you need to always be diligent in making sure that code changes did not introduce regressions. Working with JavaScript is problematic because it is not as easy to detect code errors as it is in a compiled language like C++ or Java. JavaScript is easy to write but tends to be overly accommodating for code errors.

Do you have any advice you’d be willing to share with beginner developers?

Don’t fall for the startup/overwork culture. If a company offers you three free meals, it’s because they expect you to be available at work all day. All jobs have occasional crunch times, but you’ll never be truly rewarded for pushing yourself too hard and spending time away from your family unless you have ownership stake in the company.

What are your interests outside of web development, and do they overlap with your work?

I am interested in music, cars, creating cocktails, and architecture/home improvement. These are very different from my profession, but there is an overlap in terms of my overall drive to create the best possible product and find the best examples of a craft.

Is there anything else you’d like to share about yourself, your work, and the field?

Our field is in very high demand. Make sure you do something you like and surround yourself with colleagues you respect.

Midterm: Emmanuel Kenabantu, SharePoint engineer

For my midterm I interviewed Emmanuel Kenabantu, a SharePoint engineer at OSIBeyond, LLC, an IT consulting firm that primarily works with non-profit organizations. He works remotely as a SharePoint consultant on various development projects for their clients. It is a web-based, collaborative platform that integrates well with Microsoft Office. It is a relatively new technology that is sold as a document management and storage system, but the product is highly configurable and usage varies substantially between organizations.

Q: Describe your project and the guidelines given to create it. 

A: Our assigned project was to design a SharePoint web application to allow external and internal users the ability to review and electronically sign documents. The client was using SharePoint 2010 to run their intranet site and wanted to leverage and design an extranet site to allowed them to collaborate with other partners on various projects. The entire review and approval process would be automated and tracked for auditing purposes. The instructions for the development of the platform are bulleted below:

  • The customer should be able to fill out a form and submit it.
  • A workflow would be triggered and notifications would be sent to a reviewer.
  • Once the reviewer verifies and approves the data in the form, an email notification would be sent to their partners (external users).
  • The external users would review the details in the form and provide a consensus.
  • One designated external user would submit the consensus.
  • The system will notify the clients about the consensus and generate a PDF document of the form.
  • The system would automatically start the electronic signature collection process.
  • Once the document is signed by both the clients and partners, it is archived and permissions are set to read-only.

Q: What approach did you take the design the application? What languages did you use?

A: We designed the asp.net (an open-source server side web application framework), and some of the functionalities of the program were written with the programming language C Sharp (C#), a server-side language. We also used Javascript and jQuery to build the functionality behind the form.

Q: How long did the project take to complete overall?

A: Since we are working with a small team, the project only had 2 members – the project manager was in charge of interacting with the customers using the program as well as gathering requirements, and I was the application architecture manager in charge of design, coding and testing the final form.

Q: What were some of the greatest challenges you faced in creating the program and working with other team members to craft the final product?

A: The greatest challenge has been designing a system that supported different types of browsers, such as Google Chrome, Firefox, Safari, Internet Explorer, Opera, etc. This challenge was due to the fact that we could not control which browser external users would be using to access, and interact with, our system as well as figuring out ways to work around the SharePoint browser limitations. We had to test our final form against all potential browsers and make sure that all browser-specific issues were resolved before presenting our final product to the clients that would be using it.

Q: What were some lessons or takeaways you learned in the creation of this project?
A: One of the greatest lessons we learned was to always take into account user behaviors. It is important to do several runs of testing with our customers that will be using the system, rather than just testing with our internal sources. Learning this throughout the process helped us design a more user-friendly interface with features that increased usability and accessibility for our clients and users of the program.

 

Q: How does this project contribute to both your overall career and to your industry as a whole?

A: As a SharePoint engineer, I am consistently looking for ways to better the experience of my clients and users of the interface by making things more efficient and user-friendly. My job is to identify customer needs from a technological design standpoint, and use my knowledge of coding and web design to meet their needs. In designing this project in particular (and other similar SharePoint forms like it), I can eliminate repeating steps by simply designing a program that takes all of the guesswork out of repeating form submissions and working on projects collaboratively. This kind of problem solving and shared work is especially good for the non-profits we work with because it helps business run more smoothly and efficiently, and housing a variety of forms and projects together in one place allows users to access them remotely, even on their mobile or tablet devices. This content management system (CMS) is a great way for non-profits to manage their documents with a program that provides functionality that greatly outweighs its cost.