mbmjertan
Joined 5 years ago
Joined 5 years ago
Unfortunately I need to sign PDFs often (using an image of my physical signature or a digital certificate), and I haven’t used that didn’t suck more than Adobe in this. I haven’t tried Okular for this and Evince seemingly didn’t support this - but Preview (although an extremely great document reader in most regards) didn’t let me select an image of my signature, but asked me to either sign on the trackpad with my finger (how do you make that not look like you had nerve damage?) or show a picture of my signature to the webcam of my Mac so it would do extraction on it (which didn’t work at all after 20 minutes of attempting, but also why can’t I just select a photo??). Finally I figured out pdfjs in Firefox recently shipped image-based signing (still waiting on certs)
Of course, I could have edited the PDF in a better editor (GIMP even!), but.. why is such seemingly simple and common PDF work a horror show?
Both are however in line with my personal experience and observations regarding how people around me are using the web now.
I find myself using web crawling in LLMs a lot more, and search a lot less. My reasoning follows, and I think most people would agree.
- When I’m looking for some relatively obscure information which I’m not sure where to find or which would require hours of research for me to find, I use ChatGPT (usually o3 with deep research) and refer to citations for more information regarding a topic. This saves me hours of investigating, which I usually don’t have for something that’s just a curiosity. A friend also used deep research to find papers highly relevant to a topic he was working on for his med PhD in minutes, claiming that just searching through PubMed to find such papers would take him days - and probably less successfully.
- When I’m looking for something specific in regards to a topic I’m relatively familiar with, I use search (usually Kagi, unless at work where it is banned!) to quickly find reference material.
- LLMs (and engines like Kagi) let you skip through the SEO spam you’d usually skip through when using Google, as well as letting you search more easily (due to better natural language understanding than classical query engines). The quality of search results had been diminishing for years (geeks4geeks ranks higher than SO on Google), so it’s not surprising people turn to tools which produce better results. It’s like being shocked that people are driding cars instead of riding donkeys.
A particular example is that I looked up a DTC that my car was throwing. I googled it first, and got a results page consisting of forums that said nothing, paywalled generated sites that also didn’t provide any info, scammy Scribd clones hosting diagnostic manuals for the wrong car model and ad-ridden garbage sites that just claimed “oh it could be anything, just take it to a mechanic”. ChatGPT gave me an exact (and correct) answer in seconds.
This is an expected result of what we have done to the web, and it should surprise nobody. I’m only sad that genuine, small online communities are dying in favour of walled gardens, but that’s an entirely separate discussion.
I’m an SWE with a background in maths and CS in Croatia, and my annual comp is less than what you claim here. Not drastically, but comparing my comp to the rest of the EU it’s disappointing, although I am very well paid compared to my fellow citizens. My SRE/devops friends are in a similar situation.
I am always surprised to see such a lack of understanding of economic differences between countries. Looking through Indeed, a McDonald’s manager in the US makes noticeably more than anyone in software in southeast Europe.
A lot of people blame the EU for “forcing cookie banners onto the web”, while the GDPR solely demands that you ask for consent before storing data that’s outside of your core functional needs to operate the app/website.
The UX of those dialogs is largely a dark pattern because the law did not demand implementation details, yet people blame GDPR because businesses designed them to be a nightmare to use. Yet people applaud for App Tracking Transparency dialogs.
It’s ironic how the GDPR is painted as a villain.
Sorry, I’m not too familiar with English-language literature on algorithm design. I just remember this from my uni course on it :)
I believe we used Introduction to Algorithms by Cormen et al. as the basis, so it should be covered in depth there - but I’m not too sure.
> that is rather an extreme example. i do not see the how it affects the validity of the solution in most cases.
This is a fair point, but also a distinguishing factor between a heuristic and exact approach to algorithm solutions to problems. Algorithmic solutions usually have theorem proof-level rigor for exactness. Also, I just used the easiest counterexample to come up with :)
For a counterexample, imagine you have a ton of items that have a weight of 10^-20 and value of 1, and a single item that has the weight of whatever is the capacity of the knapsack (so it’s only thing that fits if it’s inserted to the knapsack) and the value of +infinity.
All items have their cost ≈ 0, so whether you fit all of the “light but valueless” items or the single “heavy but extremely valuable” item depends on how you sort when costs are equal.
An improved heuristic would take the value into account more than just having it as a factor, but it’s not easy to design.
I would recommend finding an open course on algorithm design and analysis and going through the lessons while trying to extrapolate approaches to problems instead of just solutions to them.
Kudos for building this! I’ve just signed up and seems amazing. Hope it delivers upon that expectation.
However, exceptions that a function can throw are part of the function signature in Java unless they extend RuntimeException (and in that case your program won’t compile if you throw an exception without adding it to the signature). While the circumstances in Java make it much easier for IDEs to report uncaught exceptions, it’s a solvable problem for non-runtime exceptions using static analysis.
On the other hand, returning standardised Ok/Err-wrapped values seems like a simpler approach, both in terms of tooling support and developer convenience.
I should've added more context in the description, probably.
I do not see what has changed since, apart from Google having a larger budget for fines.