Jump to content

Web development advices

arvark

Hello! I'm currently in Grade 13 (last year of HS in my country). I'm studying IT and I've always been a step in front of what we studied in school (I was studying C# when we were stil learning how to convert numbers from decimal to binaries, PHP and SQL a couple of years ago, while in school we're only doing it now) so I find it kind of boring. 

 

I currently know:

C#

C++

Java

HTML

CSS

PHP

SQL

 

I've also used Python (but only on one of those codecademy style courses, I've never managed to develop a Python program, silly me).

 

I've worked with Unity as well.

 

What other languages (being it scripting languages like Javascript or full programming languages) would you advise me to learn to expand my portfolio (especially as full stack web dev

 

Spoiler

|| Asrock Z68 Extreme 3 Gen 3 || i5 3570 @3.5GHz || Zalman CNPS10X Optima || 8GB RAM HyperX Fury Blue @ 1600MHz || Thermaltake Berlin 630W || Zalman Z11 || Gainward Phantom GTX 970 || 120GB Kingston V300  (Gift) + 1TB  WD Green

 

Phone: Xiaomi Redmi Note 8

Tablet: iPad Mini 2

Link to comment
Share on other sites

Link to post
Share on other sites

Have you learned Java or Javascript? Because if you don't know Javascript, I would recommend that. That's one of the fundamental languages of web development. Things like React heavily lean on JS too. Some companies still support client websites that use JQuery, but that is becoming less common, so it's not something I would nescecarily recommend learning.

Some Javascript frameworks is probably also what certain companies will expect.

 

"We're all in this together, might as well be friends" Tom, Toonami.

 

mini eLiXiVy: my open source 65% mechanical PCB, a build log, PCB anatomy and discussing open source licenses: https://linustechtips.com/topic/1366493-elixivy-a-65-mechanical-keyboard-build-log-pcb-anatomy-and-how-i-open-sourced-this-project/

 

mini_cardboard: a 4% keyboard build log and how keyboards workhttps://linustechtips.com/topic/1328547-mini_cardboard-a-4-keyboard-build-log-and-how-keyboards-work/

Link to comment
Share on other sites

Link to post
Share on other sites

3 minutes ago, minibois said:

Have you learned Java or Javascript? Because if you don't know Javascript, I would recommend that. That's one of the fundamental languages of web development. Things like React heavily lean on JS too. Some companies still support client websites that use JQuery, but that is becoming less common, so it's not something I would nescecarily recommend learning.

Some Javascript frameworks is probably also what certain companies will expect.

 

Agree Javascript is fundamental nowadays.

Link to comment
Share on other sites

Link to post
Share on other sites

As you've done the python courses on CodeAcademy, create something in python. Even if you recreate something you've already created but do it in python. I'd also learn JS. 

Link to comment
Share on other sites

Link to post
Share on other sites

7 minutes ago, minibois said:

Have you learned Java or Javascript? Because if you don't know Javascript, I would recommend that. That's one of the fundamental languages of web development. Things like React heavily lean on JS too. Some companies still support client websites that use JQuery, but that is becoming less common, so it's not something I would nescecarily recommend learning.

Some Javascript frameworks is probably also what certain companies will expect.

 

I've worked with Java but not with Javascript.

 

Spoiler

|| Asrock Z68 Extreme 3 Gen 3 || i5 3570 @3.5GHz || Zalman CNPS10X Optima || 8GB RAM HyperX Fury Blue @ 1600MHz || Thermaltake Berlin 630W || Zalman Z11 || Gainward Phantom GTX 970 || 120GB Kingston V300  (Gift) + 1TB  WD Green

 

Phone: Xiaomi Redmi Note 8

Tablet: iPad Mini 2

Link to comment
Share on other sites

Link to post
Share on other sites

4 minutes ago, arvark said:

I've worked with Java but not with Javascript.

Despite the similarity in name, Java and JavaScript are pretty different languages (well, they both use C-style syntax, but that's about it). I'd recommend to learn JavaScript and/or TypeScript for web development.

 

If you want an easy starting point, I'd recommend Angular which is a pretty powerful and modern framework. Just be careful when searching, the older version (AngularJS) isn't really compatible and quite different in many aspects. The website has a nice tutorial (Hero editor) to get you started.

Remember to either quote or @mention others, so they are notified of your reply

Link to comment
Share on other sites

Link to post
Share on other sites

Scripting langauges are full programming langauges....

Sudo make me a sandwich 

Link to comment
Share on other sites

Link to post
Share on other sites

6 hours ago, Eigenvektor said:

Despite the similarity in name, Java and JavaScript are pretty different languages (well, they both use C-style syntax, but that's about it). I'd recommend to learn JavaScript and/or TypeScript for web development.

 

If you want an easy starting point, I'd recommend Angular which is a pretty powerful and modern framework. Just be careful when searching, the older version (AngularJS) isn't really compatible and quite different in many aspects. The website has a nice tutorial (Hero editor) to get you started.

Angular isn't an easy starting point. It is something the OP should aim for definetly but again, not an easy starting point.

 

 

@arvark Learn JavaScript & enough of the TypeScript basics to get by. Then I recommend learn a bit of jQuery, then choose either React or Angular. React & Angular are the way forward. jQuery is more for legacy apps and it is outdated but it's good for getting the job done whether people want to admit it or not & good for learning purposes IMO.

 

Also - work on your non technical skills. It's not all about programming - in the grand scheme of things I spend probably 33% of my time programming. 

Link to comment
Share on other sites

Link to post
Share on other sites

I agree with everyone here, Javascript is a must in Web Development.

 

Typescript would be easy to get, once you know Javascript.

 

After that, React would be nice to know.

 

If you're leaning towards backend development (not front end which is more or less what end user sees on pages), GoLang (go) is a nice language to learn due to its concurrency features and due to being compile-able to static binaries (that you can then run in virtual machines and whatever), unlike Python that's interpreted like php and others...  It's used a lot in microservices, caching content, web server replacements used where you need to do lots of tiny things in parallel but you don't necessarily need "expensive" threads etc etc etc.

 

Python is common, and I have a feeling in a few years it will be like Visual Basic and PHP - everybody learns it in schools and college/university and every person will know a bit of Python, but few will know it very well, companies will probably move away from it hoping to recruit better programmers in other languages.

 

 

Link to comment
Share on other sites

Link to post
Share on other sites

41 minutes ago, mariushm said:

 

Python is common, and I have a feeling in a few years it will be like Visual Basic and PHP - everybody learns it in schools and college/university and every person will know a bit of Python, but few will know it very well, companies will probably move away from it hoping to recruit better programmers in other languages.

 

 

Python is increasingly displacing both java and php in the server space just like how php displaced Perl decades ago. It isnt falling out of favor by a long shot. Back in the old days, it was Perl, which got displace by php. There were java applet and jsp, both got displace by JavaScript and standard html. Now php and java themselves are increasingly being displace by more modern technologies like python Django and nodejs. Many bussinesses still need programmers to maintain and update these legacy application built decades ago however so skills in these technologies are still needed but if you are to start a new project from scratch, I doubt anyone would choose something like Perl as the langauge of first choice. 

Sudo make me a sandwich 

Link to comment
Share on other sites

Link to post
Share on other sites

14 hours ago, arvark said:

I currently know:

C#

C++

Java

HTML

CSS

PHP

SQL

Hm... makes me wonder if you really really know them. It takes some years of experience of mastering a platform to be able to design and implement new features and create applications. If you know HTML, CSS do you have experience with User Experience and UI design? Responsive design? Progressive web applications? People were mentioning JavaScript - that pulls in JS single page application (SPA) frameworks like Ember.JS and Angular and those would pull REST APIs from backend written in Python, Ruby, PHP and alike with databases like PostgreSQL or MySQL which then also includes data structures, database indexes and more (bit more than just knowing SQL) plus some queues, asynchronous operations, microservices and more. It's quite hard to fully be fullstack in frontend and backend without multiple years of experience at a high tier project/company - and you would be a full stack only for that specific platform you work with. Change platform and you are a mid/senior developer again.

 

 

Link to comment
Share on other sites

Link to post
Share on other sites

On 12/23/2019 at 12:13 PM, arvark said:

What other languages (being it scripting languages like Javascript or full programming languages) would you advise me to learn to expand my portfolio (especially as full stack web dev

Lisp and Perl.

Write in C.

Link to comment
Share on other sites

Link to post
Share on other sites

16 hours ago, riklaunim said:

Hm... makes me wonder if you really really know them. It takes some years of experience of mastering a platform to be able to design and implement new features and create applications. If you know HTML, CSS do you have experience with User Experience and UI design? Responsive design? Progressive web applications? People were mentioning JavaScript - that pulls in JS single page application (SPA) frameworks like Ember.JS and Angular and those would pull REST APIs from backend written in Python, Ruby, PHP and alike with databases like PostgreSQL or MySQL which then also includes data structures, database indexes and more (bit more than just knowing SQL) plus some queues, asynchronous operations, microservices and more. It's quite hard to fully be fullstack in frontend and backend without multiple years of experience at a high tier project/company - and you would be a full stack only for that specific platform you work with. Change platform and you are a mid/senior developer again.

 

 

By "know" I mean I've worked with them and know the syntax and could do a basic app/site/whatever with it, not that I've mastered them.

Not sure if I misunderstood but I'm not claiming I am a full stack developer or anything, I just asked what languages could I add to my "portfolio" (again, not a portfolio of languages I mastered but a portfolio of languages that I've used, even as an hobby) if I ever want to become one!

 

Spoiler

|| Asrock Z68 Extreme 3 Gen 3 || i5 3570 @3.5GHz || Zalman CNPS10X Optima || 8GB RAM HyperX Fury Blue @ 1600MHz || Thermaltake Berlin 630W || Zalman Z11 || Gainward Phantom GTX 970 || 120GB Kingston V300  (Gift) + 1TB  WD Green

 

Phone: Xiaomi Redmi Note 8

Tablet: iPad Mini 2

Link to comment
Share on other sites

Link to post
Share on other sites

On 12/23/2019 at 7:19 PM, wasab said:

Python is increasingly displacing both java and php in the server space just like how php displaced Perl decades ago. It isnt falling out of favor by a long shot. Back in the old days, it was Perl, which got displace by php. There were java applet and jsp, both got displace by JavaScript and standard html. Now php and java themselves are increasingly being displace by more modern technologies like python Django and nodejs. Many bussinesses still need programmers to maintain and update these legacy application built decades ago however so skills in these technologies are still needed but if you are to start a new project from scratch, I doubt anyone would choose something like Perl as the langauge of first choice. 

For what it's worth, my view, and the view shared by several large tech companies, is that large codebases simply cannot be effectively maintained when written in untyped languages like js and python - that is why both languages have extensions to perform static type checking (TypeScript and mypy respectively). Dynamically typed languages are fine for small projects, but with larger codebase and more developers working with the code it just doesn't work.

 

Python, node, ruby, and other languages like them are absolutely worth learning, and are perfectly fine for working on one-off projects. Ask me to write some backend code that will form the basis of a product that is going to be maintained and improved for years though, and I would always choose a language like Go or Java; for front end code, I would usually go for TypeScript.

HTTP/2 203

Link to comment
Share on other sites

Link to post
Share on other sites

On 12/24/2019 at 7:38 PM, arvark said:

I just asked what languages could I add to my "portfolio"

I doubt it's valuable to do so. Companies look for people knowing specific platforms and languages. So you listing 10 won't help and then they will likely require specific platform and tools. So at best then you would be only a junior dev if at all (they can send you a code test which will require some specialization to solve the more complex tasks). IMHO you should start focusing on something you are most interested and improve your skills there.

Link to comment
Share on other sites

Link to post
Share on other sites

2 hours ago, colonel_mortis said:

For what it's worth, my view, and the view shared by several large tech companies, is that large codebases simply cannot be effectively maintained when written in untyped languages like js and python - that is why both languages have extensions to perform static type checking (TypeScript and mypy respectively). Dynamically typed languages are fine for small projects, but with larger codebase and more developers working with the code it just doesn't work.

 

Python, node, ruby, and other languages like them are absolutely worth learning, and are perfectly fine for working on one-off projects. Ask me to write some backend code that will form the basis of a product that is going to be maintained and improved for years though, and I would always choose a language like Go or Java; for front end code, I would usually go for TypeScript.

That is quite true but I believe there are certain architectural style used that allow development of large projects in these languages manageable. 

Sudo make me a sandwich 

Link to comment
Share on other sites

Link to post
Share on other sites

5 minutes ago, Erik Sieghart said:

Microservice ALL THE THINGS!

Excatly. Microservice architecture is literally...

 

project manager: what is your favorite language?

Me: Brainfuck. 

Manager: whatever, I don't care. If it can do http request, it is good enough for me. Now go! I need this Microservice that take in so and so request and then respond with so and so response like yesterday. 

Sudo make me a sandwich 

Link to comment
Share on other sites

Link to post
Share on other sites

5 hours ago, Erik Sieghart said:

Throw it into a CI/CD pipeline and it's literal freaking magic.

Of course it's magic. 

I mean look at this 

It gotta be magic if Netflix can mix mesh so many programming languages and technologies together and make them work so smoothly. 

Sudo make me a sandwich 

Link to comment
Share on other sites

Link to post
Share on other sites

21 hours ago, riklaunim said:

I doubt it's valuable to do so. Companies look for people knowing specific platforms and languages. So you listing 10 won't help and then they will likely require specific platform and tools. So at best then you would be only a junior dev if at all (they can send you a code test which will require some specialization to solve the more complex tasks). IMHO you should start focusing on something you are most interested and improve your skills there.

Mmh something I'm interested in? As in? Like a specific area of development or what?

 

Spoiler

|| Asrock Z68 Extreme 3 Gen 3 || i5 3570 @3.5GHz || Zalman CNPS10X Optima || 8GB RAM HyperX Fury Blue @ 1600MHz || Thermaltake Berlin 630W || Zalman Z11 || Gainward Phantom GTX 970 || 120GB Kingston V300  (Gift) + 1TB  WD Green

 

Phone: Xiaomi Redmi Note 8

Tablet: iPad Mini 2

Link to comment
Share on other sites

Link to post
Share on other sites

13 hours ago, arvark said:

Mmh something I'm interested in? As in? Like a specific area of development or what?

Yes. Specific language, then framework/tools etc. You may see a lot of "Angular developer" job listings that require JS and Angular the framework knowledge. In case of Python there can be Django devs needed or someone with microservices experience (Flask and or Django, DRF other REST frameworks, queues, celery alike). For devops it may be AWS or Google Cloud experience.

Link to comment
Share on other sites

Link to post
Share on other sites

  • 2 weeks later...
On 12/23/2019 at 11:13 AM, arvark said:

Hello! I'm currently in Grade 13 (last year of HS in my country). I'm studying IT and I've always been a step in front of what we studied in school (I was studying C# when we were stil learning how to convert numbers from decimal to binaries, PHP and SQL a couple of years ago, while in school we're only doing it now) so I find it kind of boring. 

 

I currently know:

C#

C++

Java

HTML

CSS

PHP

SQL

 

I've also used Python (but only on one of those codecademy style courses, I've never managed to develop a Python program, silly me).

 

I've worked with Unity as well.

 

What other languages (being it scripting languages like Javascript or full programming languages) would you advise me to learn to expand my portfolio (especially as full stack web dev

Definitely, JavaScript. That is a fundamental. Also I would suggest improving your knowledge in python to use the Django Framework. 

System

 

CPU: Ryzen 5 3600

Case: Phanteks eclipse P400A

Motherboard: MSI B550 Gaming Carbon WiFi

GPU: MSI RTX 3060 TI Gaming X Trio

RAM: 16GB XPG D60G CL16 3200MHZ

PSU: Sharkoon SilentStorm Cool Zero 650W

Storage: Crucial P2 1TB

 

 

Link to comment
Share on other sites

Link to post
Share on other sites

  • 2 weeks later...

I'd recommend learning JavaScript and eventually (when you are happy with everything that you have been learning) branching out into Node.js

With Node.js you can make web servers and APIs which is handy if you are planning to create a web service. I recommend learning React.js if you want to start doing front-end development using JavaScript, Express.js for web servers, and MongoDB as a database (mongoose is a good wrapper for MongoDB)

 

If you decide to take this route and become a full-stack web developer, remember to take it slow. There are quite a few technologies that you have to familiarise yourself with, but it is worth it when you finally understand everything.

 

If you want to begin learning vanilla JavaScript, I can recommend a couple resources to you:

W3Schools JavaScript Tutorial

- javascript.info

JavaScript30

 

I wish you the best of luck ?

Link to comment
Share on other sites

Link to post
Share on other sites

14 hours ago, ImNewt said:

I'd recommend learning JavaScript and eventually (when you are happy with everything that you have been learning) branching out into Node.js

With Node.js you can make web servers and APIs which is handy if you are planning to create a web service. I recommend learning React.js if you want to start doing front-end development using JavaScript, Express.js for web servers, and MongoDB as a database (mongoose is a good wrapper for MongoDB)

 

If you decide to take this route and become a full-stack web developer, remember to take it slow. There are quite a few technologies that you have to familiarise yourself with, but it is worth it when you finally understand everything.

 

If you want to begin learning vanilla JavaScript, I can recommend a couple resources to you:

W3Schools JavaScript Tutorial

- javascript.info

JavaScript30

 

I wish you the best of luck ?

Agreed. Op should just either master the MERN stack or the MEAN stack. These are the most modern and up to date technologies for full stack web development. 

Sudo make me a sandwich 

Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×