Hacker Newsnew | past | comments | ask | show | jobs | submit | fivea's commentslogin

> Spreadsheets are better because as you say the owner is their job to maintain it. If you replace with an IT process the new "owner" is likely a below-average developer that probably is uninterested in the business.

I disagree. Spreadsheets are incomparably worse because what you charitably described as "the owner is their job to maintain it" in real life it's reflected as having a single employee who abused a first-move advantage to monopolize and excerpt unduly control over, and even hijack, key operation areas.

We all heard horror stories of how employees screwed over their former bosses because only they had control over things like key spreadsheets. Advocating for spreadsheets is advocating for these vulnerabilities.


I have heard these horror stories so many times but never witnessed them in reality. From my point of view, excel is a great way to ensure knowledge is not hidden, as you have a file format that embeds calculations, data and outputs. It can be ugly, but nothing that a seasoned excel warrior cannot parse and there’s plenty of them around. Now if someone as an employer does not even have copies of the files, they have bigger problems than Excel itself.

The other horror stories of errors in spreadsheets, them yes I have witnessed them regularly.


> Advocating for spreadsheets is advocating for these vulnerabilities.

Spreadsheets will exist regardless of what developers think of them. Ironically, that's a good thing.

Many projects that put food on dev's tables started out as out-of-control Excel monstrosities that were created and operated for long spans of time by well-meaning and productive folks. They start as simple manual spreadsheets with some formulas and then evolve into much more involved beasts. Work gets done and it's all nicely contained in somebody's cube and they look good and can be rightfully proud of their accomplishment.

Things just get done. For a while. Sometimes a LONG while. Until the bitter realities that software developers have learned to deal with over the decades start to seep into these projects and drown the unwitting folks who created them, slowly but surely, like an ever-increasing number of small holes in the bottom of boat. That's when things break or become unmanageable and that's when developers start getting engaged-- assuming these excel masterpieces have actually become mission-critical.

There's a guy at work that operates one of these excel monstrosities. It's been going for ~7 years now. It's a monster excel spreadsheet that, among an ever-growing list of things, does dubious probabilistic forecasting of future PO's based on shit ripped from salesforce (not even using the api). He has a dedicated laptop behind him pulling in data from multiple sources, like clockwork, and has recently started making attractive Power-BI dashboards using his excel worksheets as the data sources. And you know what? He looks GOOD to the people that matter. Does the forecasting actually work? Not really, but being so immersed in all that data has made him knowledgeable about many details of the operation. He's able to keep track of costs and stay on top of things. It doesn't matter (to him) that the whole thing will vaporize when he leaves, or that he could tire of it and just foist it upon some hapless supply-chain person who's just learned to use formulas in excel.


Most forecasting doesn't really work, as in, most falls between "not useful for predicting the future" and "outright wrong." You could get your forecasts for free or you could pay millions of dollars, pretty much same result. Not an Excel thing in any way.


Indeed, the spreadsheet I am thinking is particularly hot garbage, but slap some dorky corporate bar-charts on there and it's like beer-googles for suits.


But why are you associating that with Excel? Every analytics tool features charts front and center regardless of how it is delivered, web, BI, dashboard, Jupyter, etc, and no matter what language it is written in (R: ggplot, Py: matplotlib, JS: highcharts etc.).

The guy's spreadsheet seems to work. He's delivering what his bosses want to see. You might have an issue with the final output but they apparently don't. What exactly is the problem you think you can fix?


I am not trying to fix anything.

I am on the side of excel being used like this, even if it's hot-garbage. The worst that can happen is that it collapses upon itself and then others need to come in and do it right, or migrate the thing to something else entirely.


> The candidates that are interesting to me have diverse and interesting lives, their resumes should reflect that.

Doesn't your resume reflect that if it has that written down somewhere?

Why would a CV be picked over any other if a candidate, say, paid a service to pimp out it's styling?


> A boring looking resume thats like all the others might be good enough for SAP but would get filtered out my me immediately.

I could see the point of that approach for a creativity-driven position such as designers, advertisement, marketing, or even front-end development.

For hard technical roles, where substante over style is a mandatory and very basic competence, seems to be a sure way for you to filter out all the candidates you'd be looking for.


If you do backend and don't have any personal opinions about tooling, be it troff, man, pandoc, markdown, plaintext, or whatever, then there's plenty of enterprise opportunity for you, but I personally don't want to work with you. So I think that it's actually a great filter. Maybe it's slightly biased towards candidates with high confidence in their own choices and opinions, but that's a tradeoff I'm willing to make.


> The article provides no direct evidence of people starving, only that 'We cannot freely choose our recipes'.

What? The article clearly describes how people in Shanghai are barred from accessing the supplies they ordered because their buildings have been literally locked up and there is no way to get their orders past the outside gate.

From the article:

> Sometimes one of the people in the locked building yells to the dabai or anyone who passes, to hand over the vegetables she has ordered and who are now perishing at the locked gate of their building. But people don’t have the key and the ones who do may not necessarily care.


> Keeping everything locked down has a huge human cost too.

That really depends on what's your personal definition of "keeping everything locked down".

European countries like Spain and Italy showed that lockdowns work quite well in quickly halving infection rates with negligible externalities, but their lockdown focused on non-essential work and everyone was allowed to do basic provisioning things such as going to the supermarket.

Also, if I recall correctly Spain also had in place a kind of stimulus program where people could apply for a guaranteed minimum income scheme.

It boggles the mind how some people conflate a quarantine with solitary confinement under house arrest where people are left to starve to death.


Look, I’m in Barcelona right now. A huge chunk of the population here would be deeply offended by your “negligible externalities”. In fact, I’m not sure who wouldn’t be.

Almost half the restaurants are just gone, other sectors are absolutely devastated too.

The hospitality industry is absolutely fucked, while most hotels still operate they usually have less than half the staff on payroll they used to have before lockdowns.

Because of the economic damage, the security situation in the city has gone to hell. Violent robberies are way up, it’s now normal to get robbed at knifepoint while driving your car. Cars with broken windows are everywhere.


> negligible externalities.

I hate this trend of downplaying how harsh the lockdowns were, even in Western countries. If you think they were worth it because you personally put a high importance on longevity, fine, that’s a legitimate policy position (though I disagree with it). But what happened in Spain and Italy was a catastrophic disruption to normal life by any reasonable standard.


> But what happened in Spain and Italy was a catastrophic disruption to normal life by any reasonable standard.

I lived in Spain through the pandemic. I saw from my apartment the army trucks racing across Madrid, the police cars with loudspeakers advising everyone to stay indoors, and army patrols going through the city to enforce the lockdown.

Do you actually know what was a catastrophic disruption to normal life by any reasonable standard? Having to commandeer the local ice rink to have a place to store all the excess dead bodies, and setting up a huge makeshift hospital in the city's expo hall to accommodate the patients.

Knowing that, do you have any idea what finally managed to reign in the outbreaks under control? Lockdowns. Two weeks since their onset, infection rates dropped to residual.

Don't talk about things you know nothing about.


> They already know english for the job (...)

You're somehow presuming that there is no functional difference between being a native speaker and knowing a language as second or third language.


> If it contains PII (...)

How can you tell?


How you can tell if the data you're collecting is PII? I guess there are many definitions of PII, but I generally base my own understanding on the GDPR definition:

> ‘Personal data’ means any information relating to an identified or identifiable natural person (‘data subject’); an identifiable natural person is one who can be identified, directly or indirectly, in particular by reference to an identifier such as a name, an identification number, location data, an online identifier or to one or more factors specific to the physical, physiological, genetic, mental, economic, cultural or social identity of that natural person.


> How you can tell if the data you're collecting is PII?

No. How can you tell, as a user of any random website, that the script your browser is running as part of that page you've opened isn't shipping PII collected from your usage.


Eeh, not sure that question is relevant to the points of anything described in this comment-chain. For context, here it is again:

> > > > I’ve needed to send off an HTTP request with some data to log when a user does something like navigate to a different page or submit a form.

> > > No need for that. Stop hoarding data!

> > What's wrong with doing something like this? If it contains PII, then I agree, [...]

> How can you tell?

The context is from the perspective of the application developers who wants to log some data (unclear what exactly, hence my comment differentiates between PII or not) when user is leaving. The comment I'm replying to states "stop hoarding data!" but I'm pretty clear that's referring to hoarding PII, not any data. As you're the developer setting up this "send off an HTTP request with some data", it's clear to you if it's PII or not.

Obviously, as a user with JavaScript turned on, visiting a random website, have little to no control over what data exactly is collected and sent. That's basically the point of the web today, where application developers can write arbitrary JS applications that gets executed in the browser sandbox, and hence why it's so popular in the first place.


You can tell by not entering any PII into the site in the first place.

IP is technically PII in some places. Personally I am not worried if a criminal gets "my" IP in the same way that I am not worried if they have my phone number. I would be worried if they had my name address age bank account info etc, but then I don't give that out freely


> You can tell by not entering any PII into the site in the first place.

That's not the definition of PII. At best, that covers a small subset of PII.

PII means any information that can be used to identify you, either directly or indirectly.

When you access a website combined with which link you opened or which search keywords you used can be used to infer who you are.

How do you tell if a script is not shipping that info to an undisclosed third-party?


If you are not worried that a criminal (or anyone) gets your phone number, post it here in reply to this post.

That's kind of my very coarse litmus test for PII: If I'm not willing to post it publicly in a rando internet forum, it's probably PII. There are exceptions obviously, and the inverse is not true: I may be willing to publicly post certain PII.


> AWS lambda has a bunch of python specific optimisations that make python the best candidate for lambdas (...)

I don't believe there is any truth to this statement.

The general guidelines for AWS lambda is that a) if you seek performance then Go is the way to go, b) for everything else nodejs (i.e., JavaScript/typescript) is by far the best runtime, specially given lambda's single-threaded nature and nodejs's support for concurrency.

All other options are only relevant if you have very specific non-technical constraints, such as wanting to reuse code (JDK) or just leveraging whatever language your team already uses somewhere else.


Lambda isn't single threaded. You get a core for every gig of ram that you allocate up to 16GB. Multiprocessing has been supported for a long time for at least the past 3 years I think.


> Lambda isn't single threaded. You get a core for every gig of ram that you allocate up to 16GB.

That's not exactly true.

As per AWS, with AWS Lambda you only get a second core if you provision more than 1769MB of RAM.

The number of cores can grow up to a max of 6 with provisions of over 10GB of RAM albeit AWS does not specify how that's supposed to be mapped.

There are some empirical and highly unofficial tests on AWS Lambdas that indicate that more than 1 vCPU are allocated with provisions of over 800MB of RAM, but each of those vCPUs are capped at 50% of a CPU core.

The key factor here, and what makes AWS Lambda's nodejs runtime the absolute best runtime and the de facto standard for lambdas, is that nodejs's single-threaded event loop already buys you the ability to execute code concurrently without having to rake up a large bill and resort to arcane tricks to reign that under control.

I'd add that AWS Lambda's blog post on parallel processing in Python starts off by making it clear that nodejs is the way to go.

https://aws.amazon.com/blogs/compute/parallel-processing-in-...


>>I fully anticipate they will come back in fashion.

It's not possible to predict fashions, but I seriously doubt that the whole evolutionary algorithms field will see a resurgence based on anything other than buzzword-driven fads.

In general evolutionary algorithms perform terribly poorly in any optimization problem, and at best are effective (but not efficient) in exploring problems involving the arbitrary addition/removal of dimensions/parameters, including high-dimensional discrete optimization problems.

Given there are already techniques to convert discrete optimization problems to non-discrete ones and to add/remove arbitrary parameters, and there are already global optimization techniques which are far more efficient and, more importantly, deterministic, genetic algorithms don't really offer any relevant advantage over even brute-force techniques.


I have used swarm optimization methods that have consistently provided better solutions than alternatives for optimizations of solution spaces in alterst 3 different domains. I am not sure what you are talking about.


> I have used swarm optimization methods that have consistently provided better solutions than alternatives for optimizations of solution spaces in alterst 3 different domains.

Benchmark your PSO implementation against a) a naive Monte Carlo implementation with an uniform distribution, b) low-discrepancy sequence, c) a global optimization algorithm such as DIRECT, and compare convergence rates.

I'd be surprised if your PSO implementation did not competed for the last place in terms of function evaluations.


Unfortunately I don’t currently have access to this data. I can tell you that it’s leagues better than any Monte Carlo implementation as I have done this comparison as a litmus test for several population based algorithms in the past. I I’ll look into making a comparison with DIRECT when I have time (not anytime this month)


I usually use CMA-ES as a 'very easy to set and up and better than brute force' approach. Am I dumb to do that? (genuine question, no irony, optimization is not my field at all)


You are correct about CMA-ES.


To my understanding, they are coming back in vogue with neural architecture search. But hey, it's newish, so maybe you're one of today's lucky 10,000. https://xkcd.com/1053


Oh I know a few. Evolution strategies, particle swarm optimization, ant colony optimization, etc, etc.

They are a treasure trove of easily publishable papers, but frankly the whole field feels like a fraud. Each paper is formulaic and consists of coming up with a metaphor to add minor twists to established heuristics, and in the end they all fare slightly better than Monte Carlo.

The gravy train is provided by the No Free Lunch theorem, which is just a convenient copout to justify why an heuristics isn't good except on a single convenient realization.


They are a treasure trove of easily publishable papers, but frankly the whole field feels like a fraud. Each paper is formulaic and consists of coming up with a metaphor to add minor twists to established heuristics, and in the end they all fare slightly better than Monte Carlo.

My understanding is that this problem got so bad that many (most?) of the top journals in the field have declared recently(ish) that they will no longer publish EvoComp papers of that nature. That is, the ones that amount to no more than "here's a new metaphor based algorithm that doesn't really contribute anything new to our understanding of anything and represent only an incremental improvement over existing algorithms."


This should not have been downvoted; parent’s criticism is not unfounded. Take a look at the second section of this Wikipedia page:

https://en.m.wikipedia.org/wiki/List_of_metaphor-based_metah...


Why not? OP asked for algorithms and explicitly said they didn't have to be state of the art. Then saying them not being state of the art is hardly relevant?

And an algorithm can be based on a metaphor and still be useful, one should just take care to judge it own its own merits and not give it some greater value for being "natural".


Yeah I know most of these algorithms are not state of the art. That's why I explicitly said that. Still, I find it interesting to read about them. It satisfies a curiosity of mine, hopefully shared with other people here too.


HN comments aren't StackOverflow answers. They're allowed to go off on tangents. Personally, I like to see nuances that I didn't before and so appreciated and upvoted the comment.


I was under the impression that memetic algorithms for TSP (Travelling Salesman Problem) performed a lot better than expected: https://en.wikipedia.org/wiki/Memetic_algorithm

I was told this by a professor in graph theory who co-authored a book on TSP. But he had no hand in the implementation or the testing AFAICT.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: