Web Developer Q/NA Series – 2 is our second series with exclusive questions with deep answers, read this article and learn more///

We have come again with a lot of question-answers but we will cover only 6 questions today. So I think we need to start.

Do people use C++ for web development?

The primary advantage of C++ and the rationale behind so much of the work you do when writing it is performance. An HTTP server interface is the textbook example of an application with little opportunity to benefit from this.

Why?

  1. When a user makes a web request and loads a page, the great majority of computational operations involved are already being executed by performance optimized machine code, even if a little bit of work is done by some slow language like ruby. I’m talking about the web server that handles the TCP protocol, the app server which parcels requests into worker queues, the parser which deserializes requests, the serializer to do the reverse, the database engine to fetch/manipulate data, the browser to render markup and act on javascript. All of these are optimized libraries written in C or C++.
    A well-designed web app backend will aim to have its key business logic expressed in meaningful but minimal, computationally trivial glue between these components.
  2. Network latency. From a UX perspective there is little difference between a well written ruby server and a well written C++ one. This is because the irreduceable factor is the time taken to establish a network connection and get a response from the far-away server.
  3. The nature of client-server architecture where the client is a human operator. An individual person has an extremely low data bandwidth compared to a computer. The amount of meaningful information they can receive or send in text form is limited. That’s the reason that for each user interaction it should nearly always be possible to ensure that the amount of raw data that *must* be processed immediately is low. That is why the “overhead” factors mentioned in point 1 tend to dominate on each web request.

All this said, this is the theory of why fast languages aren’t necessary for a web server. In practice, companies find themselves often struggling to keep reliably fast responses, because of edge-cases, requests that are most practical to process in a naive way, or maybe the scope of the HTTP server starts to creep into being not just the *interface* for a large scale business system, but the system itself.

If this happens, then even if you succeed in maintaining a decent subjective user experience, if you have loads of users then you stand to save a lot of money on servers by switching language.

So there are decent reasons that companies may decide ruby or python aren’t fast enough for them (although they more often decide the problem is the lack of type-safety). Still, at that point, whilst C++ is the fastest, Go, C#, and the JVM languages aren’t far behind while being far better suited to the job.

Is Web Development a good career in 2021? What is the future for web developers?

Web Development is the process of building, creating, and developing websites or web applications. It’s one of the popular fields in the tech industry. Web development encompasses all the actions, updates, and operations required to build, maintain, and manage a website to ensure its performance, user interface, user experience, and speed are optimal. These days Web Development became more complex due to the number of web technologies and tools needed, also because of the modern web that needs a lot of requirements today. that’s why we see new roles such as Front-End, Back-End, and DevOps.

Web Developer Q/NA Series

As you can see the Average Web Developer Salary in 2020 is about 60k$ per year. It also depends on the company you are working for. I’ve already told u that we are the best Web Development Agency Dubai and we pay our employees very well. But salaries for Web Development jobs are increasing year after year. That means Web Developers are in high demand in the job market in 2021.

WordPress & Wix VS Web Development :

firstly, let’s talk about WordPress and Wix. WordPress is a CMS or Content Management System which means that you can manage the content of your website without knowing how to code, you can also add themes for your Website. On the Other hand, we have Wix which is a website builder that creates a website for you, so you don’t have to know how to code. they seem similar, but WordPress has a lot more features than Wix, but the problem here is that some people think that WordPress and Wix are going to take the place of Web Development, and that’s not true, because of the following reasons :

1. Web Development gives you more Freedom on your projects.

2. You can’t build custom projects with Wix or WordPress if you don’t know Web Development.

3. You will need to Know Web Development for larger websites and applications.

Why is Learning Web Development in 2021 Worth It?

First of all, web development is never going to go out of fashion, at least after 10 years. True, services like WordPress and Wix have come a long way and one can easily design and create a simple website using these. but quality web developers are always going to be required who can turn some great business ideas into reality from scratch.

The worth of your time and effort put into learning web development will depend on what and how deeply you are going to learn. Surely, you will start with basic HTML, CSS, and JavaScript.

But nowadays, web development has moved way beyond basic HTML, CSS, and JS. Websites are getting more complex day by day and for developing and maintaining such scalable applications, you should have good knowledge about modern frameworks and technologies that are constantly evolving like: Vue Laravel ASP(dot)net, etc. with new versions coming out every six months.

Also, if you want to get started and land a job in a quick time, you should know what the current requirements of the industry are. For example, nowadays MERN or MEAN stack developers are high in demand as a lot of websites are built using these. So you have to work hard as well as smart.

Conclusion:

So in the end, yes, learning web development is totally worth it only if you are passionate about it and don’t run away from learning new things every day.

What web development programming language is Shopify written on?

(1) Shopify was built with Ruby on Rails.
(2) PHP are also used in Shopify.Shopify is based on Ruby on Rails , they are using Rails as their framework and Ruby as their main language

Liquid is an open-source template language created by Shopify and written in Ruby. It is the backbone of Shopify themes and is used to load dynamic content on storefronts. Liquid has been in production use at Shopify since 2006 and is now used by many other hosted web applications.

Do web developers copy and paste?

I very rarely do, when I do web development, which is also rarely; so I guess I “rarely rarely” do it.

I type fast enough that it’s usually easier to just write small chunks of code out again, and that avoids introducing security flaws, which are pretty easy to cause, if you are using copy/paste code.

For very large things, I’m probably going to read them in one Terminal window, and rewrite them in another Terminal window, as I understand what they are doing. This also avoids introducing security flaws in the final product, through non-comprehension of exactly what the code is doing, or exactly how it works.

Yes, that means I tend to do web design — unless we are talking a layout, in which case, yes, that’s WYSIWIG editing — in “vi”, rather than in an IDE.

Is JavaScript needed for Web development? How much JavaScript is important in web development?

Historically, JavaScript was the only language you could use on the “client” side (the end user’s computer) – because it’s the only language that the browser supported.

There were a few “transpilers” – a tool that’ll “compile” a program written in (say) C and instead of writing out machine code – have it write out JavaScript.

The result isn’t great – typically slower than JavaScript.

ENTER WEB ASSEMBLY (HOORAY!!!):

As programs on the client side got bigger – and especially as OpenGL support for 3D graphics was added into the browser in the form of “WebGL” started to make it possible to write pretty decent 3D graphics software that ran in a browser window – the pressure to have a more efficient language than JavaScript started to grow.

Hence “Web Assembly” – which is essentially a “machine code” for an imaginary type of computer. But this machine code is designed to be constrained within a “sandbox” – just as JavaScript is. This makes it impossible to corrupt the end user’s computer using Web Assembly code.

Furthermore – the browser can EASILY convert this imaginary machine code into the ACTUAL machine code of the underlying hardware.

Net result is that you can write assembly language code (or, if you’re a real masochist, machine code) and have it run within the browser window at very close to native code performance.

Now we can have compilers for languages like C and C++ to compile those languages (and others too) into Web Assembly code.

What this does is to allow you to FINALLY run virtually full speed C/C++ programs within a browser window. Securely – and portably.

THIS IS A GAME-CHANGER:

Combine that with WebGL and WebAudio and other similar API’s and now you can (in theory) write full speed AAA quality games that run in a browser window.

What’s more – you only have to write it once…then you can run it on your phone, a Linux computer, a Windows machine – heck, I can even run it on the browser in my Tesla car.

HOWEVER:

In answer to this question, you do still need to learn some JavaScript.

The interface between WebAssembly and the HTML “DOM” and some of the other handy API’s like <canvas> and event handlers require JavaScript. You can call JavaScript functions from within WebAssembly – but you have to know enough JavaScript to do that.

What are the hidden costs of web development?

Assuming that the person you hired (or you if you’re bidding a job / putting together proposal) is on the up and up – there aren’t any real “hidden costs” of web development. At least not intentionally.

I’m going to answer this in the context of smaller projects for small & mid size business – ‘agency’ work which typically caps out at around $30–40k, and often ends up somewhere around $3–5k, rather than the category of $50k+ and multi million dollar projects, because they’re very different animals.

Web development is a multi-dimensional skill that requires being very good at a lot of different elements in order to properly execute – even if you are developing a relatively simple ‘marketing site’ project (e.g. your traditional small business webpage), such as in WordPress.

What that means is that typically the ‘hidden costs’ are going to be emphasized with a more inexperienced developer. A seasoned developer doesn’t know everything. They know how to find the answers to solve their problems extremely fast.

An inexperienced developer is going to be pulling their hair out the minute a hiccup happens (which is highly, highly likely to happen regardless of your experience) – in many cases you’re managing at the very least elements of the backend (database, serversetup, mapping out models / programming), the front end (how it looks, html, css, javascript), likely called in to help with email at some point, have to edit and refine graphics (photoshop, illustrator) to make them web appropriate, and typically you’re also responsible for the overall creative idea.

That’s a lot of moving parts. A full graduate degree in computer science can’t even prepare you for it. Most of those skill sets across design, development, and all, even for a simple website requires competency in skills that don’t even use the same sides of the brain to process the tasks!

This is why long-term, well experienced ‘full stack’ developers are so priceless, because they can handle the different moving parts and figure out the answers to fix what they don’t know / don’t immediately remember.

For the inexperienced, it can take weeks – even never to get a working solution in time.

So here’s what happens:

  1. Hiccup happens or timeline was underestimated from the get go. This immediately causes project delays (dependent on the developers ability to create / find a solution).
  2. Either the solution gets implemented and things resume or the developer can’t find a solution they can self-code, so that requires the purchase of a plugin, app or otherwise that ‘solves’ the problem – which has an actual fixed cost in purchasing a license typically.
  3. Then the ‘solution’ causes another hiccup, causing more time delays.
  4. Rinse / repeat.

On top of that, if the project price is too cheap – let’s say $500–$1,000, there’s no way that developer is living off that income. They’re FOR SURE stacking as many projects as they possibly can.

That means that they’re working on your project, plus 5–6 others or more to try to get to some kind of somewhat okay check for the month, and you’ve got more delays because you’re in the hands of their time management skills (which probably aren’t fantastic if they’re pitching $500 websites).

Other costs that can sneak up on people, depending on demand is server costs to keep the site / app up, the cost of re-hiring someone else if the person you hired fell through and couldn’t deliver, plus any additional graphic design work that might be necessary (logos, pictures, all that good stuff).

I would say, for a really solid, easily upgradeable ‘simple’ business site and done in a reasonable time frame (30–40 days), you can expect a bill around $3,500-$5,500 – and that’s a good solid design, basic marketing (e.g. no huge fancy features, typical small business site) layout, that’s mobile responsive, loads fast and won’t have to be completely redone in the future (e.g. designed to be ‘upgraded’ in the future, rather than ‘scratch it and start over, like you’d have to do in Wix, Squarespace, or other ‘builder’ sites).

Anything less than that and you should probably add on another 30–45 days to whatever the timeline was and that you’re going to get someone a bit more inexperienced than what your looking for (or is just building off of templates / drag n drop builders) – anyone whose been around the block enough to know what to do, when and get it done reasonably fast isn’t gonna charge less than $3,500 – they already know it’s not worth their time if it’s less than that. For perspective, my firm’s minimum charge on even more ‘simple’ sites is $7,500 and they tend to average around $12,000.

How do I know all this? Once upon a time I was the guy who tried starting with a “$500 site” cause “I can knock it out fast” and it just never goes that way – every single one of those ‘hidden costs’ I’ve listed comes from personal experience at one time or another.