DEV Community

Have you ever been tasked to work with a language/framework you were not familiar with at all?

Patrik Kiss on December 18, 2019

Have you ever been tasked to work with a programming language/framework you either knew only a very little about, or almost nothing at all?

If so, how did you deal with it?

Collapse
 
bogh profile image
bog-h • Edited

All the time :) .Net, Symfony, Laravel, Angular. From the matter of time and experience you will look on any language as the tool. Good knowing of SOLID, different programming principles, Clean Code, algorithms and computer science at all, give you power to understand a lot on the fly.

P.S. Don't be scare to read articles about different languages, frameworks and tools it is expanding your global knowledge.

Collapse
 
wulymammoth profile image
David

This!!

Collapse
 
buphmin profile image
buphmin

My first job I was just beginning to learn PHP and we had opted to use Symfony for a web app project. I simply read the docs, did a bit of work, read more docs, googled some stuff and kept going. Eventually you pick up on the details and you get better and more fluid. Essentially just practice :)

Collapse
 
albertomontalesi profile image
AlbertoM

At my current job we were using AngularJS (now we upgraded to Angular). When I started I didn't know anything about Angular, I've never even seen a line of Angular code. It took me a while to grasp it but with some patience and the help of my senior, everything went well

Collapse
 
renanlazarotto profile image
Renan "Firehawk" Lazarotto • Edited

I was! On a company I worked for, I had to rewrite the website and the API that served it. The site was written using CodeIgniter and the API was written using Silex. I was tasked to rewrite both using Symfony. This was my first job as programmer, so I was 'omg what do I do now'.

I've started by rewriting the API and... it was kinda good! I had almost no problems on the process - thanks for the Symfony docs, mostly. Once I got the routing part, the rest was pretty much trivial - I reused almost all the logic since it was mostly pure PHP, nothing tied to the framework. The website gave me a bit more work to do because of Twig - I had to literally rewrite everything from scratch (minus the 3rd-party stuff, obviously) because of some really poorly-written code. But that turned out to be good too since it made me learn lots of stuff.

EDIT: I forgot to mention the most important part - I had never even heard about Symfony, CodeIgniter or Silex before I started working there. I was just getting how CodeIgniter work when I was tasked with this. Needless to say, it was scary at first, but like I said, it all turned out okay.

Collapse
 
platoputhur profile image
Plato Puthur

All the time. I learned most of the languages I know today because of this. When I joined my current company I knew php and a bit of python. Now I code comfortably in swift, ruby, golang and python and learned many frameworks such as laravel, nuxt.js, ruby on rails etc.

The thing is I love learning new stuff. I live for it.

Collapse
 
cristinaruth profile image
Cristina Ruth

Yeah, like multiple times per year😂

If it's very major, the company pays for training or for another person embedded in our team to coach us through the new tech.

Otherwise if I'm on my own, I go through plural sight to learn the basics then look for tutorials to apply some simple code, and then I enhance my knowledge by applying some simple enhancements. If I find myself stuck, I either Google or seek a colleague's help, or if I'm at a dead end, I escalate to my manager that I need further help from an experienced resource.

Outside of work, I do the same thing as above minus escalating to a manager. I don't have the resources to "hire" an experienced person to walk me through it. 🙂

Collapse
 
s_aitchison profile image
Suzanne Aitchison

All the time! I used to work for an agency, and Devs were very much hires for their ability "to figure stuff out and get it done", regardless of the stack.

I think it can be very daunting, especially at first. My observation is that usually coding newbies adapt much better to that environment than longer serving developers who have an area of expertise (I guess probably because the newbies are more comfortable not feeling like experts!)

My strategy when starting with a new project/language/stack depended on whether there was already a codebase or not.

If there is an existing codebase, I tend to start by following through the code on a few user journeys. It gives me a good sense of how things are hanging together and what the conventions of this language are. I would then dive right in, using previous code as a reference point and Google as my language coach 😂 The principles of good code are largely consistent across languages and frameworks and I'm often surprised how quickly you can get going. I'd then look for some informal learning courses or opportunities online (e.g. a cheap udemy course)

If there's no existing codebase I would spend a lot more time on formal learning (ideally through something more official than udemy), finding a good course to complete or other developers to learn from.

Over time I've grown to love the challenge of a new language or framework, and I think a lot of that has been because with each new language/project I feel a little less like an imposter. I feel way more comfortable now in owning what I don't know, questioning and asking for help without feeling like I am failing for doing so.

Collapse
 
tylerwel profile image
tyler-wel

Finally got programming job in Tokyo and had to start learning Ruby and Rails. Basically just being thrown into the fire, I was able to pick up on it all. I was lucky enough to have a week to go through a crash course of Ruby on Rails, but getting into the habit of writing good spec tests was really just... trial and error. And of course getting my code reviewed and learning what was good/bad practice. Just takes lots of time, googling, and some mentoring from seniors.

Collapse
 
sreechandan profile image
Sree Chandan R

Had to get into c# dotnet. I didnt have much knowledge in dotnet. Used c# a tiny bit before when I was playing with unity.
How did I deal with it? I left it as I was not interested in developing platform-specific stuff especially when its Windows. I'm more into platform-agnostic opensource so it was completely misaligned with what I wanted to do.

Collapse
 
nathanhannon profile image
Nathan Hannon

I was part of a group project where the leader opted to use React.js. I knew nothing about it at the time, but we still passed. Now I'm taking tutorials and it's surprisingly easy if explained right