HN user

mm007emko

240 karma

A random nerd who likes to discuss nerdy stuff with other nerds.

Posts2
Comments61
View on HN

I am from Europe and I have worked with many Europeans, Americans and Asians. Quality of sub-contractor colleagues from India was, same as from anywhere else, directly proportional to what the company paid for them. Good pay = skilled and hard-working. Cheap labour = barely any skills and hardly working.

And what's the point of having Lisp if you can't use it? Unpopular opinion alert: Bigger companies want programmers to be replacible resources which means they need to have huge talent pools. If you choose your tech stack for the fact that you can retain your people for only 12 to 18 months, you can't effectively use any of the advantages Lips languages offer to you.

jQuery v4.0 Beta 2 years ago

I think that many websites even nowadays don't need all that jazz and many would improve if less JavaScript was on them. How many times have you loaded a website only to watch a couple of JavaScript "spinners" for everything to load only to click somewhere and everything started again? MS Azure management is one of such sites.

SPA with real time updates, complex layouts to be mobile-friendly, real-time updates of many components, endless scrolling and PWA features would be a total PITA. Yes, I don't disagree.

The vast majority of web apps I have seen so far don't need to be like that.

jQuery v4.0 Beta 2 years ago

I remember jQuery from it's heyday when we used it as a replacement for Mootools. Since many people are going from React to HTMX, maybe we've made a full circle and we'll see web using just plain jQuery as well?

Emacs 29.1 3 years ago

Exactly. I have been using git for my .emacs files and there is little I really miss from Emacs for editing files and even quite a lot of coding.

XML is the future 3 years ago

At the time we were reluctant to update even our linux servers. We had only critical security fix repos enabled and checked them once a week.

No, we didn't update PHP unless strictly needed.

Well, speaking of myself, I had always heard from managers that "people who work from home don't work", "it's more effective and efficient to be in the office", "you have to live the company culture" etc. But when we asked about a team-building event with colleagues from USA and India we were told "use modern technologies, it's equally effective". Something wasn't right, to say the least. Then COVID struck and the managers saw that the company didn't collapse. Au contraire, the efficiency of work teams were the same or even better. I also had to invest into modifications of my apartment to create a nice and efficient work environment, out of my pocket. So when my employer said "OK, COVID over, return to offices", I asked to remain full-time WFH. Denied. OK, found a new job. Luckily, there were other people who did the same so they now allow for full-time WFH.

These were my reasons. Since all that "be in office" was an utter load of shite and corpo toxicity (managers wanted to see you sitting at your desks or call for pointless meetings which could've been an e-mail), I am also extremely toxic about "return to office" unless it's guaranteed that the whole team is in the same office (which, in larger companies, doesn't happen).

If you, asim, want to work from the office and prefer real human contact (which, TBH, cannot be replaced by Teams, I agree with that - I spent my fair share of time away from my wife (luckily no kids at the time) and yes, a Skype call and couple of dungeon runs in World of Warcraft can't replace the experience of being at home :-D ) that's absolutely fine. I wish you find a workplace which suits you (that shouldn't be so hard these days). Do you really need a couple of weirdos on HN to assure you that you are correct? Guess what, speaking of the WFH, hybrid or "office" crowds, we all are! These are our preferences. Mine is different from yours. That's all. ;-)

I worked for a tech startup, well, quite a long time ago. All of us were in the same office. In case of some HR manager reads it: by "office" I mean "office". A room with doors, windows, a couple of desks each dedicated to one person. No open-plan, cubicles, "modern", "innovative" ... no shite like that. The whole team in the same office. In case of some HR manager reads it: by "whole team" I really mean "all developers and testers". It was also in a country with "strong lunch culture" (Czechia). Not as good as in let's say India but still - we all went to a pub mid-day for a lunch. I still miss those days.

When I moved to bigger companies, teams were larger, not necessarily in the same town. And we had colleagues spread across multiple timezones. And not only across EU (we have 3 but the vast majority of countries are in the same timezone as I am). We had colleagues in USA, Canada, EU, India. No difference whether I was in the office or at home.

You probably don't want to hear that but unless the whole team is in the same office I don't want to "return to office" because there is nothing for me in it. It's not worth the wasted time and fuel for commute.

I have a shit job (Python DevOps in tel. co. industry). No problem with that. Previous job was in applied research. Very interesting, unfortunately the work conditions and compensation were much worse than my present-day shitshow.

Life is not only about work, I have to work to be able to pay my mortgage and to enjoy other activities.

Having happy or unhappy life, for people in the IT industry, is mostly about their mindset.

Java programs might not run in debugger very well either, depends on where and how you place breakpoints.

However I'd be glad if profilers (and notably memory profiler) would slow down a Python program only as much as valgrind does C.

LLMs like (Chat)GPT won't take your job. Software engineering is a creative job. Language models are not creative. Imagine that instead of using SQL to query a database of knowledge you use plain English. They can't create anything on their own. If they interpolate from their knowledge, it's usually fine. If they extrapolate, the outcome is shit. For instance, ChatGPT has enough knowledge (training data) about Python and Java. It can generate unit tests for Python and Java functions. I threw a less-known language, Common Lisp, the other day on it. It failed miserably (calling functions which didn't exist, calling with wrong number of parameters, it even imagined a mocking library which doesn't exist at all!). The more I know about machine learning and artificial intelligence (I study that stuff in a Ph.D. programme) the less I am worried. AI isn't dangerous. The only "intelligence" in AI is in its name. Nowadays machine learning really boils down to matrix multiplications (and set of (usually quite static) rules which can change the numbers in the matrices). People not understanding it and misusing it are. Does the vast majority corporate managers understand AI? We know the answer.

There is a ChatGPT craze right now but it will cool down eventually. It's not the first time this is happening. Google changed the way we search the internet, suddenly everything can be at your fingertips. Teachers didn't lose their jobs and people still go to school since you can't google things when you don't know the fundamentals of the topic. Chatbots changed the way we approach customer support. Support people didn't lose their jobs (at least entirely), since chatbots are subpar experience. If you are 20 years in, you can probably remember Visual Basic 6 - a tool which everybody can learn and write programs easily. We, software engineers, didn't lose our jobs.

Sure. But I'm a software engineer who is finishing a Ph.D. in applied informatics (coincidently in an area of time series prediction using ML). I'm not a manager.

When I mentioned "AI Winter" in front of them they didn't know what I was speaking about. But they created a nice corporate ladder which anybody can climb and it was based on years of experience with the aforementioned frameworks. Python experience needed, Scala + Spark was an advantage.

I don't know what are you planning to do. But ... I'm buying a huge load of popcorn and I will laugh my ass off when this bubble bursts in a couple of years.

The company I work for just jumped on the bandwagon and is actually searching for people with ML/AI experience. If you can use Spark, TensorFlow, Scikit and Keras, you actually have a better chance of getting the job than a Ph.D. who knows only one of the frameworks. (That's the way many corporations work, sadly.)

The only place where "intelligence" is in the AI is in its name. These are mathematical or logical models which resemble a behaviour of an intelligent being and if you throw ML into the mix, the AI models can actually learn on their own. But they are not creative. They can do amazing things but they have no comprehension of WHY they do these things or have (usually) no notion of truthfulness. They just repeat what they were learnt on or extrapolate from it (often wrongly because there is no critical thinking and fact-checking in contemporary models).

I see a lot of tell-tale signs of another bubble which is going to burst in a couple of years like it did in the 1980s.

Nothing to worry about. If someone's job security is endangered, they can either switch employer or do something else.

But if you can claim experience with these frameworks, enjoy the ride. Companies are going to pay you whatever you ask.

Keyboard-driven UI on Android? Well, for the brave and true hackers (if you don't connect a keyboard to your android device which you can ... but why having an android device then?)

DuckDB 0.8 3 years ago

I remember chasing memory bugs in C# and Java projects at work. These are usually considered memory-safe languages yet their sophisticated garbage collectors are not panacea. There is a reason things like this https://docs.oracle.com/javase/8/docs/api/java/lang/ref/Weak... exist. Or why you might re-use existing objects in certain situations https://www.oreilly.com/library/view/java-performance-tuning... .

On the other hand, there are garbage collectors available for C and C++ programs (they are not part of their standard libraries so you have to choose whether you use them or not). C++ standard library has had smart pointers for some time, they existed in Boost library beforehand and RAII pattern is even older.

Don't put all the blame for memory bugs to languages. C and C++ programs are more prone to memory leaks than programs written in "memory-safe" languages but these are not safe from memory bugs either.

Disclaimer: I like C (plain C, not C++, though that's not that as bad as many people claim) and I hate soydevs.

The same applies to SBCL (a fork of CMUCL) which has more active development now. The funny thing is that the name of the compiler is Python. But this Python actually produces fast programs :) .

I have LispWorks (I like the IDE) and although the hybbyist, non-commercial licenses are not out-of-reach for many (if not most) people, many (even companies) prefer running on free-of-charge stuff. My current employer doesn't even pay for PyCharm (main language at my current workplace is Python) and they are dirt cheap compared to e.g. Microsoft MSDN Subscription.

I didn't stress the garbage collector enough so I can say that LW is faster or slower than other CL implementations. I'm currently doing an algorithmic research where the strain on garbage collector is not really that big, it's mainly about numerical performance and SBCL is by far the best from what I tried - LW, SBCL, CCL, Clisp, ABCL, ECL. Garbage collector takes usually 1-2% of run time which isn't that bad. I suppose that if I stressed it more than LW garbage collector would outperform SBCL but that's only my theory based on target audience of LW.

If you have experience with Allegro and LispWorks and can compare it to other implementations, could yous hare it, please? I'm quite curious. There isn't much on the internet about this topic.

I use SBCL for research in nature-inspired algorithms. Not only you can use the same fast linear algebra libraries (BLAS, Lapack) as for instance NumPy does, recently they added support for SIMD instructions so you no longer have to call C or ASM code for vector (and matrix) computations if you have only a couple of small matrices and not on the "hot path" of your program. Most of the Common Lisp implementations used nowadays produce native code (or C or LLVM code which will be natively compiled).

So you don't have to rewrite anything. Nowadays ML stuff is usually about matrix multiplications in its core so Python with NumPy (or a Cuda library) also delivers good enough performance. The native code is already there, just call it. You don't have to write it.

They release every month so although the releases might not sound big in isolation, the sum of what they release over a course of let's say year is quite exciting.

Last really big one (for me) was support of SIMD instructions in the compiler, other releases had improvements here and there.