28
AleCx04
6y

New position at work. Lots of power in regards to tech stacks of my choice.

I feel like Neo.

First project was finished in a week using Clojure. A basic application that would automate the process of adding our students into a particular active directory system in which many other things happen at the same time including updates to pins and other shit as well as networking and wifi permissions. Works fast as fuuuuuuuuuck, the alternative existed(somewhat) in php and while there was nothing wrong other than speed I wanted to show the head of my department what i could do.

It was anticlimactic as fuck. I thought it was gonna take me longer. It fucking didn't and i am glad as shit. It is now working like an absolute powerhouse in its own environment and being monitored by the sys admins, they loved how easy it was to deploy and how well behaved it is.

The head of the department is impressed as fuck and the board of directors got a hold of it. Reason being that I am being displayed as some sort of wizard that used ancient alien tech in the 21st century.

Fuck yes, major win.

I also get to add Clojure to my resumee. Hod even said that if needed be they will rethink my salary to add the fact that i get to use this tech where no one else can.

Comments
  • 4
    It's awesome using off-meta tech that's really good at what it does.
    I got a chance to do an internship in Erlang in which I got almost complete freedom to explore ways to get the job done (dunno about how it is over there but it's extremely rare here). Totally awesome and it's great to have Erlang on my resume too, people actually do ask about it.
    Will definitely try to get a job related to this stuff once I'm done with studies, can't wait.
  • 2
    @RememberMe brooo! That is awesome, i always think of u as the functional programming wizard and i had no clue you were still studying! What a beast man. Do you have any plans of what to do after you graduate?
  • 3
    Often times i wish i could see the op name in the rant timeline but i usually guess its your post after like 10 words in
  • 2
    @AleCx04 oh lol, I'm not, I get confused by simple real world stuff still. I'm a decent theoretical person, not so great at practical stuff. Need more practice there.

    Done with graduation, I'm just on downtime while I wait for post-grad to start. Will be going towards embedded and distributed + control engineering, there's scope for functional programming there, hopefully (especially in the distributed part). In the meantime I'm doing some work part time, but pretty free otherwise so I have time to explore all this, heh
  • 1
    Can I ask how fast it is as compared with the PHP one?
  • 1
    @ganjaman cuz we bae like that
  • 1
    @RememberMe i dig it. You are gonna do great man :D
  • 2
    @Ganofins considering that one is optimized for parallel computing and concurrency: a lot man.

    To give an example, an initial test was done with 1000 users. The php program did it in approximately 10 seconds while the clojure program was done instantly, milliseconds.

    Do keep in mind, Clojure is compiled into jvm bytecode. Normally i would not question php speed, since it is really flipping fast. Maybe if i had used swoole it would have been better at handling this sort of task.
  • 0
    @M1sf3t writing an interpreter in Go by Thorsten Ball would be my go to place(pun intended), but they do cost like 30 bucks a piece i think :)
  • 0
    @M1sf3t eventually he did change to Rust for that implementation(go is garbage collected) but as far as implementing a language goes(again with the puns) it is a pretty solid language for the purpose of learning. Super easy to use and remember, the syntax is not elegant and there ain't nothing quirky happening with it.

    I really dig Go :D and hope everything goes well with your new job dude :D
  • 0
    @M1sf3t simply put: a garbage collection takes care of handling the memory required by your code so that you do not have to do ti. Languages like Java, C#, Go, Javascript, Python and others have a garbage collector. It is basically automatic memory management. This is important for certain development domains such as language design and microcontroller design since precise control over the memory is a must.

    It is also one of the main reasons why a lot of those very same developers can't use some of the languages we use, they need complete control over what they are writing.
Add Comment