DEV Community

Discussion on: Web Development !== Computer Science

Collapse
 
vqng profile image
DrowsyNaga

Hmm I am actually not sure how to define the terms correctly. I think a better explaination is to depict the whole spectrum.

Web developments deals with business logic most of the time. You still need to concern performance but it is uncommon to worry about it. On the other hand, you focus more on delivering in a timely manner and keep your codebase maintainable over time.

Then as a backend web dev, when you progress, you will encounter issues with scaling your data store. Now you may understand a thing or two about db index, sharding, replica etc. Just enough to roll out your application. Maybe You have heard of raft concensus, blockchain, machine learning, all the fancy stuffs that you treat as blackbox and build your app on top of it. When shit happens, you struggle to figure out why because your blackbox is broken and you need some black magician to fix it.

One day you realize you have hit the limit. What sounds crazy before now looks remotely possible. You wonder if you can configure or even customize a piece of existing software. And you realize inside your db there are so much work with complex math and formal proof. Index is a tradeoff and you exactly know in which case it does not help and may even does more harm. You cannot just jump straight into code but have to read a whitepaper first to grasp the concept. Crazy shit like how to decompose a signal (say, image pixels) into discrete frequencies.

Finally you desire to make your own new database with some new design to fit a specific use case. Nobody has that idea before nor such problem is so new that people havent studied it yet.

Where do you draw a line to separate a web programmer, an engineer and a computer scientist? You can probably tell now. The last phase is what we call of research nature and is academically most demanding, the work has to be original and fundamental. Yet the one who earn the best salary are those who practice what in the 2nd last phase. They apply the latest research work to solve the most complex business problems.

Collapse
 
ata333 profile image
ata333

As a Computer Science graduate who worked in ecommerce Web Development this is absolutely true.