DEV Community

Erjan
Erjan

Posted on

Should I dive deep into blockchain and ethereum development? I'm thinking of Machine Learning vs Blockchain

I believe blockchain is not just a hype, yet another language. It's a long lasting trend emerging to bring up new disruptive tech stack. I wanted to study python,android etc. I'm 27 and need to specialize finally! I realize finally - I can't know a bit of everything and know nothing in depth.

What is ur opinion of blockchain as a career? Is it worth it to dive & invest heavily into it?

Top comments (8)

Collapse
 
mortoray profile image
edA‑qa mort‑ora‑y

Blockchain is not a "field", it's a very speicfic tool that only applies in a limited number of situations. It's also not something that requires extensive study to make use of. It's not applicable enough to be a career path, though still a useful tool.

Machine learning is a field of study, comprising hundreds of techniques, algorithms, best practices, and assorted knowledge. It's actually more of a sub-field, in the branch of "data science". Knowing less than the full data science field would not likely be a good career path, as it'd be too focused.

Collapse
 
ben profile image
Ben Halpern

What would you say the "field" most related to blockchain would be? Distributed computing? Database administration? Or is it a general-purpose tool that any software developer might encounter more or less? Just wondering if you have a thought on that.

Collapse
 
mortoray profile image
edA‑qa mort‑ora‑y

I've not thought too deeply on this, but it's an interesting tech from this perspective. I think it's more of a fundamental tool than field specific. Let's consider it from a few viewpoints:

Security - Block chain is about distributed trust in a data set. It's a way to maintain the integrity of data without a central authority. Most programming has a central authority, so a typical programmmer may not encounter it. Infrastructure work on the internet though will probably see it being used more (I imagine DNS would eventually switch over).

Database - It definitely stores data in a decentralized manner. It's qutite inefficient at this though. If you didn't need the security aspect I've yet to see a reason why you'd otherwise use it for a database.

Distributed computing - I know Ethereum adds calculation into their system, but again, it's a really inefficient system for computation. Without the "security" aspect there'd be no reason to use block chain for distributed computing -- it's more about distributed authentication and transaction validation. Unlike traditional distributed computing, block-chain reduces the computing power overall, and additional nodes don't increase it (there is no scaling).

Any app with a central authority, and/or private networks won't likely benefit from block-chain. This means about 99.99%+ of all apps won't benefit from it. In terms of security though it's fascinating, and will definitely feed new ideas in how to to do internet infrastructure. It remains to be seen if the term "block chain" will persist, or ends up just describing this one class of solutions.

Thread Thread
 
mortoray profile image
edA‑qa mort‑ora‑y

I'll make an addendum for a non-traditional field, "governing". This is really part of the "security" aspect. Using block-chain may be a way for governments to open certain record pools (registrations, statistics, etc.) for public scrutiny.

Even with a central authority a block-chain can ensure the integrity of records, thus preventing corruption, both in the data sense and political sense. It gives the public a way to monitor the data over time.

For example, if your land registries were with an open-block chain (being done somewhere I think), the public would have a permanent record and would see all changes to the registry. It's a complete open log of all DB transactions in this sense.

Collapse
 
trg profile image
Tom G

I think in general, go with what will get you excited to go to work everyday.

Tech changes very fast. I’m in the same general field I started in 10 years ago but the tools and process from 2007 are completely different from what’s used now and I can already see how it will be different in 2027.

Collapse
 
jjude profile image
Joseph Jude

What you are describing is a common doubt/concern when you start your career (in fact even after 20 years in the industry, I still face it). You are listing out two points here:
1) should you specialize or generalize
2) should you specialize in blockchain or in AI

Regarding specialization, I will give the answer what Jack Ma, the owner of Alibaba and Derek Sivers, founder of CD Baby gave. When you start, learn as many fields as possible. That's the only way you will understand what you like. I blogged about this dilemma in two blog posts:

An awesome tip from Jack Ma & Derek Sivers to build your career
The curse of EVERYTHING and NOW on building your career

I hope you find them useful to find your answer.

Regarding the second, a general rule of thumb I use when faced with a fork in the road is, can I take both? In physical world, I can't; but thankfully in the software world, I can. Reality is always negotiable.

Blockchain and ML are going to be the future in all areas of business (and thus in software). You will have to learn both.

I bet more on Blockchain than ML. ML will augment the business model; blockchain will change underlying fundamentals of business models. So challenges and scope are wide in blockchain than in ML.

Collapse
 
erjan profile image
Erjan

So what do you guys think? Is blockchain worht it as a whole career path?

Collapse
 
mveytsman profile image
Max Veytsman • Edited

The good news about blockchain tech is that a lot of it is very young, and depending on what you're looking to do you can contribute very quickly.

On the other hand, if you say invest the next year in only writing Solidity contracts I'm not sure if that sets you up for success career wise when the way we write smart contracts inevitably changes.

How are you going to evaluate your career? Money? Prestige? Good coworkers?