DEV Community

Ben Halpern
Ben Halpern

Posted on

What new language/tool/etc. have you been meaning to learn but haven't gotten around to yet?

Top comments (126)

Collapse
 
laurieontech profile image
Laurie

Vue! Started to play around with it yesterday :D

Collapse
 
katieadamsdev profile image
Katie Adams

Only to a beginner level but I had a crack at Vue recently and - as my first attempt at using a framework - was pleasantly surprised! How're you finding it?

Collapse
 
desi profile image
Desi
Thread Thread
 
laurieontech profile image
Laurie

It’s a great one for sure :)

Collapse
 
laurieontech profile image
Laurie

I'm liking it. It's certainly fast to get up and running/start to use.

Collapse
 
ben profile image
Ben Halpern

First impressions?

Collapse
 
laurieontech profile image
Laurie

I will still never be a fan of functions that start with $, it seems unreadable. I'm more likely to use the mounted function instead of $mount as I result.

I really like how lightweight the configuration is. And it feels pretty intuitive without a lot of extra context/bloat to understand.

Thread Thread
 
romedu profile image
romedu

I bet you hated Jquery.

Thread Thread
 
laurieontech profile image
Laurie

Haha, I accepted it! But I like the direction things are moving in terms of readability.

Collapse
 
samuraiseoul profile image
Sophie The Lionhart

How do you feel about single file components? I think that's the best thing coupled with the scoped css.

Collapse
 
laurieontech profile image
Laurie

I’m amenable to both!

Collapse
 
jaakidup profile image
Jaaki

Yay, it's quick to get going, but it's also quite powerful as you dig in further.

Collapse
 
gablaroche profile image
Gabriel Laroche

Golang! I started to read a few books on O'Reilly, but haven't coded in it yet

Collapse
 
gypsydave5 profile image
David Wickes

Just going to leave this here...

github.com/quii/learn-go-with-tests

Collapse
 
gablaroche profile image
Gabriel Laroche

Well well well, don't mind if I do

Collapse
 
flrnd profile image
Florian Rand

I'm finishing The Go Programming Language, a bit dense sometimes, but a good must have.

Collapse
 
mebble profile image
Neil Syiemlieh

GraphQL. The hype makes me wanna join in, but I just don't feel like I need it yet. I guess I just haven't worked on any project large enough to warrant it

Collapse
 
kenbellows profile image
Ken Bellows

A fun experiment to try it out is to find a public REST API, ideally something that can be modeled with some sort of type system (my recommendation: the PokéAPI), run some queries to get familiar with it, then build a GraphQL layer in front of it. Gets you familiarized with GraphQL types and resolvers and such. There's a slight learning curve at the beginning, but it's not bad, and it's a very nice interface to query once it's set up!

Collapse
 
mebble profile image
Neil Syiemlieh

Awesome suggestion. I'll definitely try this out

Collapse
 
laurieontech profile image
Laurie

If you want a really clean way to play around with GraphQL make a Gatsby project and throw in some kind of static content.
When you spin up the project for development it generates an additional localhost endpoint that consists of a stand alone GraphQL playground (think postman for REST).

Collapse
 
mebble profile image
Neil Syiemlieh

A Gatsby + GraphQL combo is exactly what I had in mind when thinking of learning graphQL :D

Collapse
 
jacobmgevans profile image
Jacob Evans

You could try creating a standalone GraphQL API instead of a RESTful one. One of the jobs I did the only thing Express was doing was running Apollo server, everything else was pure GraphQL API.

Collapse
 
tushark1 profile image
Tushar Khubani

I would personally suggest you to start with a crud project involving authentication and authorisation. Covers pretty much the basic necessities for a base.

Collapse
 
obsessiveprogrammer profile image
Tom Bonanno

Rust. Been seeing lots of hype about it lately and started reading up and going through the getting started stuff.

Collapse
 
dbanty profile image
Dylan Anthony

Rust is a very complicated language to learn and also so worth it. After going through their tutorial (which is the best language tutorial I’ve ever encountered), it is my favorite programming language.

Collapse
 
mebble profile image
Neil Syiemlieh

I've also considered starting Rust soon, been going through their tutorials. What I love most about it is how well documented and thought out it seems to be

Collapse
 
haruanm profile image
Haruan Justino

Elixir with Poenix framework, didn't have time to first impressions yet, but its seems that the active record(ecto) is a bit hard to get used with.

Collapse
 
nickforall profile image
Nick Vernij

I liked ecto a lot when I first started using it, because its API is very explicit i was able to pick it up quickly, especially compared to activerecord.

Collapse
 
haruanm profile image
Haruan Justino

Great to know, I'm comming from python/Django, hope I have the same feeling that you had.

Collapse
 
crenshaw_dev profile image
Michael Crenshaw

Not so new, but Ruby. I understand it's a really clean-feeling language. But I'm worried JS/TS will leave it behind.

Collapse
 
mealeyst profile image
Shawn Mealey

Been meaning to pick it up here too. I feel like a lot of folks still like it's syntax over Javascript/Typescript so I think it will still have a place for a while to come. I still haven't gotten over the syntax yet, and our codebase has a bunch of things going on where I feel like I am just intimidated.

Collapse
 
rhymes profile image
rhymes

Don't see Ruby disappearing anytime soon so learn away!

Collapse
 
borisimple profile image
Boris Krstić • Edited

Python.
Writing different automation scripts with it. It's pretty cool and interesting how easy I can make something to work the way I want it. I was trying to do the same thing with Node but boy I'm just not succeeding!
Anyway I am on the edge of choosing between JavaScript or Python. I can use JS "everywhere" and I can use Python for almost "everything".
My current work has nothing to do with these technologies at the moment, but I am preparing myself for a career change 😏

Collapse
 
pclundaahl profile image
Patrick Charles-Lundaahl

Python's a lovely language :)

I'd also say: you don't necessarily need to pick! Python is really fast to learn, and you can be productive with it really quickly. JavaScript does really well as a slow-burn language - it's totally doable to use the little bits that you need and pick more up as you go (it's also got a crazy amount of variety in its ecosystem, and I'd say it's probably good for the sanity not to try to learn all of the things at once).

Collapse
 
borisimple profile image
Boris Krstić

This actually makes a lot of sense.
Thanks for the feedback!

Collapse
 
dbanty profile image
Dylan Anthony
Collapse
 
katieadamsdev profile image
Katie Adams

Python. Picked up a Raspberry Pi and can see it being a great opportunity to start learning it.

Collapse
 
samuraiseoul profile image
Sophie The Lionhart

Ansible. I never want to set up my computer again.

I basically want to install all my dependencies, hook up my github, download my repos and dot files, run updates, build all the project docker images, and have everything good to go. I know normally Ansible is for setting up server clusters though.

If anyone has any better ideas to set up a local dev machine I'm all ears though! I basically want a package manager file for apt in the vein of package.json or composer.json I guess, with a few scripts to be ran after dependencies are installed.

Also I guess I'll write a simple bash script to download and run the ansible stuff eh? :P Or alternatively can I use docker to set up my actual computer? Tough life...

Collapse
 
dallgoot profile image
dallgoot • Edited

i suggest you go the Docker route : Ansible comes after basic system needs.
Those basic system needs are simple (since you use composer i'm assuming PHP) :

  • http server
  • PHP
  • some database

These can be quickly set up via a docker-compose file and started/stopped easily (once every config is done)
Ansible at the moment will only add a layer of complexity that, i think, you don't need at first.
All packages are configured/set up through the dockerfile(s) once and if needed you can enter a bash/sh console on each container.
I recommend you start with the more "complete" images (they have everything needed system wise) and then go for smaller images that fits your needs later for less memory/more performance.

:)

Collapse
 
samuraiseoul profile image
Sophie The Lionhart

I get what you mean there, but I'm not talking about setting up deployment servers. I'm talking about setting up my local environment. Like I buy a new computer or wipe my hard drive or something and want to get up and running again. Things like installing my IDEs, setting up my .bashrc, installing things like spotify or slack, and other utilities like gedit or 'bat' or 'exa'.

For the projects I will use docker for sure. I don't think I can set up my local machine using docker though can I?

Also if not, I actually decided to go the Ansible route so far and have it almost working already. Just having some ppa issues and also an issue with snaps on crostini that it was too late to try and fix when I encountered it last night.

Thread Thread
 
dallgoot profile image
dallgoot

you're right Docker means containers not your host machine so its only use, for your needs is the environment for code.

Setting up your OS is another topic and i believe there (probably) are tools to customize the distro you are using.

BUT going with Ansible for that is a good idea :)

Collapse
 
juliathepm profile image
Julia Flash

I spent a summer learning x86 assembly in three separate courses. I did this while playing Dragons Dogma, I would pause the game - do a section | chapter of the courseware - and keep playing as a reward for my advances in the course. I was learning it for understanding the utilization and modification of shellcode better. It didn't work. Dragons Dogma was great though.

Collapse
 
flrnd profile image
Florian Rand • Edited

Elixir. Started reading a book two days ago after a long phone talk with a friend. I asked him for a nice language to learn for back-end development. He's currently working with elixir so he gave me very nice points.

The thing is, reading the book I felt like few years ago when I tried to do a hello word in brainfuck.

for those who don't know what _brainfuck_ is, here is a hello word:
+[-[<<[+[--->]-[<<<]]]>>>-]>-.---.>..>.<<<<-.<+.>>>>>.>.<<.<-.

So, after a few pages, put the book in the shelves and I'm continuing learning Go. And good thing I've been learning how to benchmark functions in Go!

Collapse
 
glennmen profile image
Glenn Carremans

Vue: I have been mostly focused on backend (PHP/Laravel) but want to spend some time in learning more frontend frameworks.

Kotlin: I am an Android dev but unfortunately I have not been able to work in Kotlin yet, for the last 2 years I have worked mostly on big legacy applications that are written in Java.

Collapse
 
rhymes profile image
rhymes

Judging from the direction Android dev is going I'd prioritize Kotlin, you can also contribute to the newly released DEV Android app in the meantime 😂

Collapse
 
glennmen profile image
Glenn Carremans

Very true! I hope to be able to help a lot in the future development of the DEV Android app.
So many interesting things to learn everywhere 😂 hard to prioritise, Kotlin, Vue, tailwindCSS, SASS, ... Lol the list can go on. But for sure will try to focus on Kotlin.

Thread Thread
 
rhymes profile image
rhymes

Ahahah the infamous "stuff to learn" list

Collapse
 
dbanty profile image
Dylan Anthony

And to that point, it may be worth looking at Google’s own Flutter which they are pushing in very hard. Haven’t decided how I feel about Dart yet, but it’s very familiar and easy to pick up.

Collapse
 
dbanty profile image
Dylan Anthony

It’s very easy to mix in Kotlin to existing Java code bases! I’ve done it several times now in Android apps and I’m far from an expert Android dev.

Collapse
 
ybogomolov profile image
Yuriy Bogomolov

Agda. Dependently-typed languages are the future of programming, IMO. And Agda has the most compelling feature set - even Cubical Type Theory mode. Even TypeScript has bit of type-level fun. But it's hard to come up with a good project idea that will expose best parts of each language.

Collapse
 
rhymes profile image
rhymes

Rust ☀️

Collapse
 
jaakidup profile image
Jaaki

Typescript definitely.

After spending hours and hours hunting down a bug, which turned out to be caused by someone else's npm package that changed my array to an object for a split second!!!!

I should have used that time to learn Typescript and left all that Javascript nonsense behind.