6 ms·
How do people convince their team or management to use a newer language which may not have plenty of alternative programmers and experiences in the team in thei
by h1d 8y ago
How do people convince their team or management to use a newer language which may not have plenty of alternative programmers and experiences in the team in their projects? I can't even use anything other than PHP if I sense anyone else may touch the project later, otherwise I'm currently using TypeScript throughout the stack.
- tobyhinloopen 8y agoYou don’t except if management are devs themselves. From a business perspective, Elixir is a terrible choice. Ive worker on Elixir over a year and it is great, but there are 0 devs and learning it is hard for newbies
- qaq 8y agoThis highly depends on you business requirements
- tormeh 8y agoThis. The use case needs to fit Elixir so well that it makes up for the difficulty in hiring devs etc.
- the_duke 8y agoAlso, Elixir is a relatively small and simple language. Yes, it's functional, but it doesn't have a lot of complex concepts and is much easier to learn than , eg, Ocaml or Haskell. (at least in my opinion). A good dev should probably be productive within a week.
- arvinsim 8y agoNow if only we can find jobs that doesn't require extensive Elixir experience.
- qaq 8y agoHmm most don't? They do usually require Ruby though
- siscia 8y agoYou seems quite optimistic for me. While is true that the local concepts are quite simple and that the language is quite small, how all those ideas play together create a very complex environment rarely seen outside the BEAM/Akka environment. I don't believe that good developers without prior experience in such systems can become productive in a week. They could be able to write code that compiles, but the week after that they are going to throw it all out and restart from scratch.
- wwweston 8y ago> I don't believe that good developers without prior experience in such systems can become productive in a week. They could be able to write code that compiles, but the week after that they are going to throw it all out and restart from scratch. So.... pretty much like programming in the most popular languages, too. ;)
- yawaramin 8y agoI have Akka experience. The Erlang system is vastly simplified compared to Akka just because you don't have to deal with: - Creating an actor system manually - Wrangling an ExecutionContext - Getting replies from actors in the form of `Future[SomeReply]` - Making sure you don't do blocking operations in basically any of the concurrency tools. Compared to doing all that, the Erlang/Elixir runtime can be explained to a newcomer quite simply–processes are cheap, start them up (e.g. Task, GenServer) and do whatever. The nuances can come in time. There is even https://elixirschool.com/en/ https://elixirschool.com/en/ for a crash course.
- davydog187 8y agoI joined my company in a large part because the CTO wanted to build the company with Elixir. Two years later that has proved to be a fantastic choice and it has not hindered hiring in any way. In fact, most candidates are very excited about it.
- sanderjd 8y ago> learning it is hard for newbies It is? Why?
- freehunter 8y agoThe paradigm is vastly different from traditionally popular programming languages, there are few tutorials, many of the tutorials that exist get out of date as the language changes and aren't in-demand enough to keep up to date, etc. It's easy to learn Python because everyone has a blog with Python code on it.
- davydog187 8y agoFunctional programming is not vastly different from other popular programming languages. There is also a wealth of tutorials, books, and interactive learning resources for Elixir that are up to date. I'm not really sure what you're referring to
- dudul 8y agoMore than FP, the parent may have been referring to OTP and how Elixir (Erlang actually) deals with concurrency. It is indeed quite different from other popular languages.
- mercer 8y agoThat said, for a lot of Rails-style CRUD work I think a lot of the OTP stuff can remain murky, at least until you get comfortable with the rest of it.
- freehunter 8y ago>I'm not really sure what you're referring to Maybe this is the problem, then. I'm not the only one saying it, it was said in the article and other people are saying it here too. You can pretend a problem doesn't exist, but that doesn't make it true.
- mmartinson 8y agoI think Elixir can be pretty easy for newcomers if they have the chance to work with someone who provides guidance on the OTP parts of the ecosystem. Immutable fp has a whole lot less weird stuff going on than some popular oo and imperative languages. I think it's hard for people to jump into writing concurrent systems when they have no experience with it and all of a sudden have some powerful tools to try, but getting stuff done with modules and functions is refreshing straightforward, especially with how good the docs have become.
- karmajunkie 8y agoI'm sorry, this is simply not true. Elixir sits right now in a stage of its lifecycle where adoption is increasing, lots of developers are interested in picking it up but don't have much experience with it yet. Rails went through the same thing circa 2008-2010. I've introduced it now at several client companies which have gone on to readily adopt it more widely within the company, and positions on those teams that have adopted it are greatly coveted. Moreover, learning it well enough to be productive (though perhaps not proficient) takes only a week or two of coaching from a motivated developer. I'm not sure what experience you've had with it that leads you to this conclusion, but your position is by no means definitive.
- tobyhinloopen 8y agohttps://insights.stackoverflow.com/survey/2018/#technology https://insights.stackoverflow.com/survey/2018/#technology Elixir is not even mentioned. https://trends.google.nl/trends/explore?geo=NL&q=%2Fm%2F0pl075p,%2Fm%2F06ff5,%2Fm%2F060kv,%2Fm%2F07657k,%2Fm%2F010sd4y3 https://trends.google.nl/trends/explore?geo=NL&q=%2Fm%2F0pl0... You see that line that barely moves away from the 0-line? It's Elixir. Elixir is a great language, but there are hardly any developers to be found and creating an application in Elixir is just a not a business decision. It's a fun decision. But telling that on a platform that mainly consists of developers gets you downvotes for sure :)
- nathan_long 8y ago> Elixir is not even mentioned No, but Erlang is listed among the most-loved, most-wanted, and highest-paying technologies. > there are hardly any developers to be found and creating an application in Elixir is just a not a business decision. It's a fun decision. WhatsApp is a famous success for Erlang. Cisco is using it broadly as well. A large portion of the phone system runs on Erlang because of its technical advantages. Bleacher Report went from 150 servers to 5 by switching from Ruby to Elixir, and their whole content delivery model is enabled by using Elixir, since most of their stuff is personalized and caching doesn't really work. Elixir is basically "friendlier Erlang"; all the advantages of the BEAM are there. Elixir and Erlang devs together attend conferences like Code BEAM. You could probably hire Erlang devs to do write Elixir, and if you had an Elixir app and Elixir died, you could switch to Erlang. I think there are some good business reasons to use Elixir. Of course, I'm a dev who has spent significant time learning it, which makes me somewhat biased. But I did give it some thought before jumping in.
- dep_b 8y agoIf your problem looks like what WhatsApp already solved you could use the same solution. I sold it like that.
- seanhandley 8y agoStrongly recommend "Adopting Elixir" from PragProg: https://pragprog.com/book/tvmelixir/adopting-elixir https://pragprog.com/book/tvmelixir/adopting-elixir Lots of solid advice for how to introduce Elixir as a new language to an established team using a different language.
- ksec 8y ago>How do people convince their team or management to use a newer language which may not have plenty of alternative programmers and experiences in the team in their projects? It would be hard for something like Nim, Ocaml, which are brilliant languages but lack the some support. But Elixir is built on top of Erlang. Erlang! The whole Networking world depends on it on one way or another. It is literally some of the most important pieces of technology. You can replaces your OS with something else, you can replaces your lib with alternatives. But I am not aware of another ecosystem that is an alternative of Erlang and it is battle tested the hack of it. And Elixir is built on top of Erlang / OTP.
- ex_amazon_sde 8y ago> Erlang! The whole Networking world depends on it on one way or another. It is literally some of the most important pieces of technology. Erlang is not popular in the FAANG companies, not used in their CDN devices and LBs, and not used by CDN vendors (e.g. Arista). Mainly because the OTP does not solve most classes of problems you encounter at a large scale.