Some criteria to consider when selecting a programming language to learn…
We get this question all the time in some form or another; “I really want to be a developer, but what language (programming) should I learn?” Well, let’s jump into it:
1- Consider the Job: The type of coding or kind of programming you want to do. For example do you need to do/want to build an iOS or android app? Web for small businesses? Etc… These decisions will play a role in what language you choose. 2- Consider the Ecosystem around the Language: You don’t necessarily want to jump into a technology that was not yet well enough established. Generally speaking if there’s no support/community for that framework/language, it might not progress or evolve with the “times”… 3- Consider the Job Opportunities Around the Language: Kinda relates to #2, if there’s not a lot of cross-platform support or community base, then generally speaking, you’re going to have a hard time finding a job with a more obscure language… Sometimes the “niche” market pays off but those opportunities are few and far between. 4- Consider the Market Forces: Competition can play a big role in choosing a language. How many other devs will you be competing against? What’s their experience? What is the Language that the majority of the market uses? All these things should at least be considered when you’re choosing a language.
Now that we’ve wound you up tight with anxiety and nervousness for choosing the right language (or failing miserably right out of the gate), let us offer you calming and relaxing idea to soothe you mind… It doesn’t really matter what language you pick… “Most of the modern languages share 80-90% (depending on language) of the same principles and constructs. The syntax or code that you write may be different, but at the end of the day…it’s the underlying architecture that makes the language…” so don’t worry about nailing your choice right outta the gate.
Check out the vlog for a more in depth explanation of how to go about choosing a language. And when in doubt, choose an open platform over a closed one; they tend to win out in the end. Enjoy.
First things first, a kick-ass opening for this vlog with a (literally, for those afraid of heights) breath-taking view of Montreal, and then back into the “studio” to check out my rig (drums), all to a slick tune in the background. Maybe we’ll call this segment, “Weeee, so fly.”
But let’s dive right into it… Should you use JAVA for back end web app development?
A very specific question deserves a very specific answer: “At the end of the day you have to always judge your technology stacks based on both technical implications of the choice and market implications.”
Technology implications: Do you have experience with the language you’re using? Are you comfortable as programmer? “It depends how nerdy you are, if you are very comfortable writing code, you’re very comfortable as a developer and you’ve done web apps before, yeah, JAVA, could be a good choice, but you gotta consider more than just the technical aspects of the language…”
In terms of market implications: “…are there jobs there? Is there a long road ahead for that particular technology stack?” Now, there are plenty of jobs in JAVA but they tend to be in or with larger businesses/ organizations. Even with smaller businesses or freelance work “JAVA would not be my first, second, or third choice…”.
Check out the video for a super detailed answer to this question and the more broad lesson that we’re trying to teach: What can you do Vs. what will the market pay you for. Also, did you find our RUBY diss(es)? Oh, yeah, there might be more than one! Enjoy!
Alright we’re going to lightly touch on this and if there’s enough of a public outcry, we’ll gladly do a deep dive but for now let’s skim over client side Vs. server side rendering. YAY!!
Now, full disclosure: It’s better to watch the video than to spend time reading what’s being written. The video is quick articulate and makes good and knowledgeable arguments for sides better than writing this out. But if you still feel like reading on, here’s the (very) skinny…
CLIENT SIDE RENDERING: So when you’re looking at the app/website, the views you render/send out (to the web browser) for the client to see. Generally you want to keep the views pretty simple when it comes to the processing power behind it.
The downside? Not everyone has the same hardware on their computers and may encounter trouble viewing the page (ex: web browsers not up to date, lag, slow load times, etc.)
SERVER SIDE: Does not rely on your viewers having the most up to date web-browser or fastest computer but it does require a lot of server side processing power…
So what’s a dev to do?
Check out our video for answers and opinions. Enjoy!
In a word …Nah… “I don’t think there’s ever going to be an official CSS4 specification…in terms of how CSS is developed…they now release CSS in terms of being module, so components of new CSS comes out…and are widely excepted by all the browser manufacturers.”
But before you go grabbing all the new and shiny things, we do have a warning for you as an active web professional/developer: just because you see a certain technology or feature is implemented in the specifications, it doesn’t mean that you can use it. “It takes awhile for browser manufacturers… to put into place these new capabilities according to the specification.”
And the kicker? Even if these browser manufacturers do streamline these capabilities into the newest versions of their product, not every person, business, or entity will not be using that browser, they’ll be suing an older browser and not even an the updated version of it. “A lot of people do not upgrade their browsers on a regular basis; some don’t upgrade them for years! So depending on your target market, …you may not be able to implement a particular feature that very modern browsers implement.” I know, it’s frustrating, right!?
So in conclusion, there’s not gonna be an official CSS4, there will be new CSS capabilities released into the ecosystem, but shinier is not always better.
Check out the video for a more robust explanation by a human (me) and <shameless plug>: we do offer a CSS course where we teach the foundations do you really get the sense of how it works. Also, for our followers out there or people interested, we go into how we chose which features to implement when we designed webstudio and the thinking that went behind it. Enjoy!
PS – We were just having a little bit of fun with words in the headline…we love you, CSS
HTML4 classic formatting tags, vs modern HTML5 interpretation of semantic tags.
HEADS UP: We’re answering what may be considered a beginner’s question so if you’re super busy and you already know the answer to this, feel free to move on. But there’s a little nerd history lesson in it…
So, “what is the difference between strong vs. bold tags, and between EM(emphasized) vs. italic tags? To me, they look the same on a web page. What is the purpose of distinguishing between the two?”
Great question. Simple answer: it’s semantics NOW… “You can use either/or today; it doesn’t make a difference.”
Historically: “when HTML was first invented there was no CSS, so they needed tags (a set of html tags), to allow web pages builders to add some styling to the page. ie: add italics, make certain texts bold, insert images, etc. So the early browser-makers … created a set of tags that were display tags: they allowed to change the look of things on the pages.”
As things evolved and HTML5 came along, the powers that be decided to give semantic meaning to the tags instead of having programmers go back and update/correct their previous work. Now, that being said there is absolute use in these semantic tags; for example those with accessibility issues like the seeing impaired will have a “reader” talk the page out and in that case, the reader will interpret paragraph tags, heading/footer tags,etc and it may become pretty useful.
Another use would be to target a very special audience or for very specific web application needs…but that’s another video…
Speaking of videos, please check this one out for a more in-depth history lesson with way more charisma than the typed word.
Also -shameless plug- Our web development course teaches you the infrastructure / history of these tags and how they operate. We like to go above and beyond -Check it out. Plus at the end of the video, some sweet summer heat and beach!! Enjoy!
Which programming languages will be the most popular in 2-3 years from now? Should you even care?
Since the dawn of time, man has looked up to the sky and wondered what the future will bring…
Where will we live?
Will Pokemon revolt and catch US for their own twisted means?
…And what will the programming languages of the future be?
Well we’re not gonna sit here and cook something up, my crystal ball is gathering dust in the closet and I’m only going to bring it out when it attains “vintage” status, so I can sell it for a killing on craigslist…
But, by market share PHP is the biggest. It’s got to the point [where] “…none of these languages are going to go away any time soon, simply because they’ve reached that tipping point where they’re woven into the nerd language.”
It’s really the same thing with all the BIG languages. They’re part of the background and still very much a part of the forefront. They are relatively easy to use, convent and almost universally understood by virtually all of the developer community (even though opinions on them will differ wildly…)
Thinking about it from a practical standpoint, with the corporations you work(ed) for, let alone huge multi-nationals regarding the languages they use in their products: “…they’ve all gotten so good now that there’s no real major reason to want to change from one technology platform to another… for some company to want to move off PHP to PYTHON there has to be something really compelling about PYTHON or something really bad about PHP.”
Check out our video, where we explain our “theory” and drop some hints about what we think the future will ultimately bring…plus catch the (backhanded) nod to RUBY (we should be keeping track of these…). Enjoy!
In the name of the JAVA; The RUN(time), And the HTML / PYTHON …DRUPAL.
THIS just in, from the Department of Urban Humanity or “DUH”: Programming Languages Are Not Religions! You’re all grown up professionals and we’re sure you have better things to do with your time than this, right?
Now if this doesn’t apply to you, please click on the video and enjoy the show…
But if you feel like “yeah but”-ing us about this, know that this isn’t a good look for you: both personally and professionally. Personally you come across as an arrogant jerk that has a “my way or the highway” approach (and not in a fun, sassy way), and professionally, well, you look like an amateur or a stunted, mid-level programmer that has no imagination or flexibility.
I know that seems harsh but it’s just such a waste of time when there’s amazing and inspired work to be done. Truly creative stuff that transcends the boundaries of algorithms and languages; and here we are chirping each other out cuz we don’t like the other person’s choice of programming language? C’mon!!
If you still feel the need to argue over this, might we suggest taking all that good energy and hitting the gym?Or maybe going to an actual church, breathing in some incense and chilling out in the back pew to some hymns? I mean, it should go without saying that even religions themselves shouldn’t be argued over like they’re religions, but here we are…
I don’r really know how to end this except by saying, be cool to each other guys. Life’s too short and you got better things to do with your time.
Unless you’re using RUBY, ya backwoods savages!! …just kidding!! …ish…
Widely used by some big name organizations like Nasa and Harvard, is a job working with DRUPAL outdated in 2019?
We’ve been asked if DRUPAL is a dinosaur, an aging language that won’t matter in the years to come and if anyone who works in it will be working towards obsolescence (whoa…heavy, huh?).
Well the short answer is “…no…”
The long answer is (thankfully) a little more detailed and availablehere in what I’d like to be the first to describe as a “Sausage” explanation. In that it is both meaty (detailed) and has a hint of spiciness (fun nerd ranting) mixed in…yeah, ya know what never mind, I’m regretting this metaphor already…apologies…
Suffice it to say that it’s better to experience this explanation in it’s entirety, with the relevant senses than to write it out. Plus, there a bonus RUBY dig (mwahaha…). Long story short if this is a first job for you, we all have to start somewhere and work looks good on a resume no matter what (not to mention experience) and you’d be surprised how many languages are still being used today…
I think you really need to watch the vlog to put this into proper context…
We received an email that pointed out an interesting idiosyncrasy when it comes to learning programming languages. Long story short, it was pointed out that while python was a great language to learn, there are not many jobs (outside of AI) that actually use python today, thus making it harder to enter the job market. With so many other languages being used for other purposes, for example, games: C++/C# for games, and for native app development there’s swift/java/kotlin, to name a few, it doesn’t seem to be worthwhile to learn python if you want to get right into work…
Okay, now before we go any further, I strongly urge you to watch the video for context, I don’t want to start a nerd war; there are far better uses of our time…
That being said, for the most part, “there’s a lot of truth to that. Python is the go-to language in AI/machine learning and it’s the second [or] tertiary language…in many other areas.” The email goes on to conclude that “learning webstack is the best way to getting employed quickly.” I can’t argue with that, but where does that leave us with python?
“Python is a great language, it’s a language that glues everything together. If you’re working in large organizations, you might find the need for python. …A lot of schools teach with python now…because it is an easier language to teach people how to program with. …It’s accessible…Productivity of the language, in terms of how long it takes you to write things is a huge factor today, when you’re looking at programming languages…” But if you’re out to get employed right away then maybe webstack is the best thing for you. However, if you find yourself struggling and maybe you’ve had problems with other languages, python could be a great way to connect the missing pieces and streamline it all. The job opportunities will be less, not zero but less, unless you have a relevant university degree. Full transparency, yes, I do offer Python course but they teach foundations, modules, programming, etc. “…it’s just a vehicle to teach certain programming concepts and mechanisms.” I feel like the best way explain this is to watch the vlog, it really puts the things I’m saying here into perspective. Plus, at the end of the vlog, I look outside only to find February hasn’t left yet…jeez, get a clue, man! Enjoy!
In the age of fast CPU’s and mature development platforms, will C++ see its’ use slowly diminish over time…
Oh, how the mighty have fallen…
C++: a programming language of immense speed and power has always been the poster child for learning to be a programmer. It’s still used in video games (for it’s processing speed) and other programs (and some apps), but all that power/speed does come at a price. Well, more of trade-off, really… the programming language is notoriously difficult and time consuming to write out [program], and paying programmers to write out such a time-consuming language can be expensive to a fledgling company or even a huge corporation in the red.
Now credit where credit’s due: C++ Is. A. Beast (in every way), and it’s not going anywhere any time soon but, “…it was created 30 years, 40 years ago; something like that… it was created at a time when computers were far far less powerful. The hardware was far less powerful so we needed to design programming languages that really took advantage of the limited resources in terms of memory and it terms of CPU.” With hardware becoming more and more powerful, other less…hardcore, let’s call it…languages have emerged that take advantage of those capabilities that come standard (compare the standard hardware setup of a computer in 1995 and 2010? Heck, 2005 even!) and in turn offer more flexibility with time and framework.
This video goes way more in depth about it (it also starts off trippy in a “Little Big Planet” kinda way). Enjoy the effects, the content and the GoPro magic…