Great article! I love the line "To be a web developer, you have to learn how to learn without missing deadlines."
Yup, that's it in a nutshell.
Truth! And be willing to put in extra work that would make most people run away. Lol!
Which brings back again the taboo around the issue of estimations... I wonder what the #NoEstimates movement proponents would say about this.
I think that being able to deliver a solution in time is fundamental to this craft, which doesn't mean you have to tolerate abusive working relationships or exploitation.
You typically aren't starting projects from scratch is such a big one! Blank screens can be intimidating, creating the scaffolding for a production application is a challenging learned skill. But you don't need to know all that to start being an employed developer.
It's yet another reason I don't think technical interviews appropriately capture on the job skills.
I like your article and the points you made except the first one that web development has nothing to do with Math. That I disagree. Problem solving skill comes from math. Everything that has to do with Math, has to do with solving problems one way or another. Art is more off being creative and that's completely different from problem solving.
I am now a Full Stack developer who started from traditional art (drawing and painting) to digital design, 3D modeling and animation to VFX (special effect) before learning web development and I can tell you that I appreciate all the math I did before learning web development. My art background only help me to analyze and visualize projects from a creative stand point but my math background greatly contribute to how I solve many of my programming challenges my friend.
While some problems are solved mathematically, not all are. And when you read an article like this one written by an engineer with background in robotics and machine learning, realize that the math she is talking about is above simple high school algebra. Very few web developers need high-level calculus, statistics, numberical analysis to build portals. This, in fact, is the fundamental reason why coding boot camps can kick out web developers in droves with not so much as a math refresher.
Definitely, agree there.
The "math" that you would apply to the average website/web application, is often limited to some dimension/scaling computation. A sorting algorithm perhaps, or something with applying interests/taxes to a certain financial amount.
There are of course exceptions to the rule, but those are not the standard projects for web developers.
Does that mean that web development is easier? I believe it's not. It's different. Not every engineer is suited for both fields. I expect from a senior web developer to have a certain "feeling" about what he is building.
This feeling; you have or you don't. An algorithm can be tested by a unit test. The decision if the button should be aligned left or right, can not. In the perfect world, we have UX designers for that. But in the real world, they are not always on the team.
So a senior web developer should have a certain feeling for common sense. Also there, I'm sure that not everyone agrees. But that's how I run my team. I don't spec every integration. I don't convert every mockup to a final UI design. The mockup is what you use, and convert to match our standards and used frameworks.
I had a comment once on a retrospective; the point for improvement was that new functionality should be specced better. Because there were multiple development cycles required before we reached a final thing that worked in a nice way.
The point being; that development cycle was planned that way. But the developer wasn't comfortable with that. We often need something, of which we are not entirely sure how it should work. So we start with a prototype, we stabilize the code, get some users to try it, collect feedback, improve usability, collect feedback, ...., finalize.
Sometimes the feedback part is internally between developers, sometimes clients/users are involved. Sometimes this cycle spawns a few product versions, sometimes it's a faster iteration.
The alternative is to spec everything. That's more clear for the developer. And it might even be a bit faster in total time spent if there is a good idea of the product you want. But chances are big that you don't get what you wanted. That it works suboptimally. Just because something works in your mind or on paper. Doesn't mean it will work in the real world.
I guess it depends what people mean by math exactly.
Boolean logic is math too. So you could say that, whenever we write an if statement, it's technically math 😁
It is true that you learn a lot of problem solving and logic when you do math. I'm glad you have been able to use those skills you have learned from math. But my point was more like what Shawn has said.
It's great to have a math background, although it's rare a developer would have to do advanced math like calculus or Bayesian statistics.
Plus there are a lot of other ways to learn problem solving and logic. ☺
All of the above plus working on a framework based on a language without having any full grasp on the language at my job: I shifted careers from Android development to web development and started using symfony with a very basic knowledge in php
But having to deal with clients, non tech colleagues and others overall was the most surprising, I chose working with computers coz am not a humans person, so having to build the communication skills was my hardest challenge
This article is spot on! Communication is such a crucial part of the job, probably the most important. Choosing your words carefully when you take to non technical people. Having the ability to adapt your speech to your audience will make you an amazing developer 👍
You have out into words what I've been telling my past interviewers:
I don't know your framework, but I've worked with 10 other similar frameworks, so I know how to learn a new one!
You really have to be versatile in this field.
Keep up the good work !
Yeah I couldn't agree more and its really simpler than people make it out to be more often than not.
It really boils down to more familiarity than logic and solutions because problems are recurring(and similar/common) and so would be solutions.
In other words, one can say experience is a currency more valueable than any when it comes to web dev.
I don't know how you've started but I tried to understand the way of working. I tried many times but can not get to the simple core of understanding.
You can write machine learning models in the browser to add useful and creative functionality ...with Tensorflow.js, or Java etc...it's always up to you if what your learning is going to be applied usefully
Thanks for the article!
I am a bit scared to jump off to web development.
I am currently a web designer (sadly not too much coding) and I want to move to web dev but I am so scared!
Your article gave me a little more confidence :)
I remember being hired for my first webdev job to do a full-stack position and expected to learn everything within a week when I only had experience with basic front-end projects. Dealing with existing code and projects are pretty scary, especially when you never worked with that framework or language before and thrown into it on top of deadlines needing to be met.
Thanks for sharing your web development experience. Even I'm a web developer aspirant and I did realize one of your shocks during my practice. But all the same, I consoled myself that any cool concept that involves math can be an addon to the site.
"In engineering, there are certain regulations you have to meet or your designs are sent back or completely scrapped."
This. A million times, this. I was one of the people that for the past 10 years I was bragging for being a "software engineer". Thanks for the article, you helped me see the truth that was right in front of my eyes and I chose to ignore.
I'm new to the world of Web Development. What would you suggest be the first language I should learn? I mainly want to deal with back end for mobile apps, web pages and etc. Any tips would be helpful ma'am.
Note that if you work in agencies, chances to work on new projects is higher than if you work as in-house-dev for a product-company. On the other hand, the code-quality and all around craftsmanship might not be on par, since agencies don't always do maintenance after shipping. Also there's usually no on-call.
I like this article Milecia. "You will typically not work on a project from scratch" helps newbies to reduce the stress. However, from my personal experience, I prefer to work from scratch. I would prefer to be "you won't reinvent the wheel" instead of "you will typically..."
So true about the 'communication' part.
In my first dev job I was absolutely disoriented by the amount of time I spent talking or in meetings rather than coding.
Ultimately you realise that soft skills are more important than technical skills, and that there are many employers who look to hire for attitude first, and then competence.
You can teach someone how to build a UI in React, you cannot teach someone to not be an as**ole or a terrible colleague to work with.
Web development is more of an art than a science
Web development is more of an art than a science
It make me remember MIT intro to cs lecture 1, when the Prof said computer science is a terrible way to introduced cs, cuz it's not a science or more like engineering, art or magic and it's not about computers in the same way biology is not about microscope.
Great article Milecia
Hi Milecia, I loved your article and I included it my latest video:
Thanks for including me in your video! You touched on a lot of good points from all the articles you reviewed. 🙂
"Web development is like an art";
I got that one!
Great article! Thanks for posting.
Hi ma'am Milecia, I would like to ask how many years are you in web development?
I've been doing this for about 4 years now.
Great informative stuff.Really useful for web developers. I would like to add my site : chennaiwebs.com/web-development-in...
Sure! Feel free to use it!
Awesome post, very relatable.
Great Article! I'm gonna be starting my career as a web developer from July. Any tips or suggestions for someone like who is still a novice but wants to learn.
mathematics is also about problem solving.
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.