HNHacker News
TopNewBestAskShowJobs

veselin

384 karma · joined September 23, 2013

submissionscomments
veselin··on All Python versions less than 3.6 are now EOL
This used to be the case when every unicode character could fit in 16 bits. Now, most methods that take char may fail: https://docs.oracle.com/javase/7/docs/api/java/lang/Characte...
veselin··on All Python versions less than 3.6 are now EOL
I don't think I am mixing it up. The char type is not a unicode character just like the byte is not. Yet, these are the characters in a string type. Python went to fix this, jvm and clr didn't.
veselin··on All Python versions less than 3.6 are now EOL
On a similar note, both Java and C# made an early and mostly incorrect decision to support utf-16 in the native string and char types. This choice also made some programmers to believe that every unicode character fits in one char, causing bugs, etc.

Yet, I have not seen a rush to "fix" any of them the Python way.

veselin··on So you want to roll your own crypto?
My understanding is that such tricky side-channel free code ideally should not be directly written by humans. I know of at least one project that has made a lot of progress on this idea, although they say the crypto primitives are still at research level: https://www.microsoft.com/en-us/research/blog/project-everes...
veselin··on Let’s implement a Bloom Filter
The entire Bloom filter is a loss in terms of space. The Bloom filter may give me better lookup performance (by skipping lookups in the underlying data structure) at the expense of this space. But this is if the Bloom filter itself is fast.
veselin··on Let’s implement a Bloom Filter
The article has a good implemenetation, but when reading about Bloom filters, I often see claims about optimality, but it does not say optimial for what. In this example, an optimal Bloom filter for 1M elements does 7 lookups in a bitvector of 1.14MB, which is usually 3 to 5 L2 cache misses (with 256KB or 512KB cache).

But looking up the 1M elements directly in a BTree will usually lead to 1-2 cache misses and depending on the data element size, may even fit in the L3 cache. Then, what is this bloom filter saving me from?

veselin··on Telegram files EU antitrust complaint against Apple’s App Store
Agreed for PASemi and Android. They were hot, certainly they won in the short-mid term by being part of the bigger organizations. But by now, I think it severely limits their possible impact.

All the big app stores that are also part of another purchase (e.g. hardware in this case) will almost inevitably have monopoly problems (nobody can compete with Apple on speed of devices so Apple can raise the "prices" of apps). You are talking about the technical aspect that sideloading should be allowed (i.e. some competition), but this is not enough - eventually this competition should have some form of an "equal" start, probably by allowing them to install the market from the App Store, which is what Telegram wanted in their case.

veselin··on Telegram files EU antitrust complaint against Apple’s App Store
It is full of Apple (and other corporate) apologists. But I just want to point out that Google executives were saying some years ago that if Android was not part of Google, it would have been one of hottest startups in the valley.

Similarly, I am sure that if PASemi is spun off Apple, it may be the hottest CPU company in the world. I am sure that the Apple services will also do better outside the Apple hardware group. There are plenty of innovations and certainly there is the tendency to use them to raise the prices for consumers (which is illegal) as opposed to grow the market. I will refrain to say if Apple if guilty in this case, just saying that if hypothetically it is, this is not the end. In fact, many good things may happen in the long term by actually applying the anti-monopoly laws and breaking up a few companies instead of working around the laws.

veselin··on Data structures and algorithms I actually used while working at tech companies
For interviewing, I find it most useful if we ask a question that is an algorithmic problem to solve (but we don't tell them it is a graph problem and obviously it's not something as classic as Dijkstra). Then we observe if the candidate can formulate it as such, or can formulate it as anything useful (often there are several options, e.g. some find the problem to be dynamic programming). This gives much more information about the analytical skills of the candidate than about their algorithms knowledge. In terms of knowledge, what I find useful is just to ask what is a hashtable and how it works.

Of course, there are positions where this kind of skill is unnecessary and I cannot know everything about the false negatives. But failure in these areas also correlate with poor coding skills, at least in my experience of a free hundred interviews.

veselin··on Bulgaria writes new chapter in long story of demographic decline
No. She is Romanian. As a result, Romania's GDP was going in a much better trajectory before the local politicians tried to stop her and bring the country back on the old corruption path.
veselin··on Only 9% of visitors give GDPR consent to be tracked
There are some sites (e.g. sites by Vox Media like TheVerge) that are outright illegal according to GDPR. There is only "Accept" and cookie information links that don't include any opt-out options. This is not just a dark pattern, but actually not having the settings on the site. Maybe I can email them not to track me. I wonder why aren't they fined a few hundred millions so that this kind of practice stops.

So my guess overall is that GDPR is not enforced at a larger scale and we are very far from enforcing the requirement to have "Accept"/"Decline" buttons equally usable.

veselin··on Make your 404s into 302s
This is as good as the CVS versioning on a per-file basis. Its problems are well known and it is not widely used now for a reason.
veselin··on Facebook to shift permanently toward more remote work after coronavirus
One should keep in mind that all the "forever" claims by corporations are forever only until some VP quits. The moment the productivity of remote employees goes measurably worse than the one of local employees, there will be immediate reason to reverse these plans.

Yes, some companies are 100% remote and they do well, but I think it is because they hire from another less competitive (for compensation) pool. I.e. they pay low end silicon valley salaries in cheap markets and manage to get very high-end talent.

veselin··on The 2020 iPhone SE
All you say is that it does not serve very well the Apple shareholders to build such a device, because it will have lower profit margins. Not that it will not serve its users.

Of course, judging by most of the comments, the users are completely happy with this. Some are throwing money on their monitors despite saying it is a compromise. So you are right that a different device is/was quite unlikely.

veselin··on Formal Verification Tool Competitions
They overapproximate. This means that may say something probably doesn't terminate even if it terminates. The idea is that if it says it terminates, then there is a proof it does.
veselin··on SIMD instructions
I was wondering generally, is SIMD a good idea for general purpose CPUs. Imagine if the current high end CPUs had double the number of cores, no SIMD, but possibly higher frequency and the algorithms that benefit from SIMD were all run on integrated accelerators instead.

At least as a side observer it looks like a huge number of very large registers take large portions of a core, for sure consuming a lot of power as well, just to sit idle while the core is running JavaScript. Can somebody with CPU architecture experience say what is the real tradeoff here.

veselin··on Proving the Lottery Ticket Hypothesis: Pruning is All You Need
I wonder, isn't the new CPU training with locality sensitive hashing similar to constructing something close to a winning lottery ticket?
veselin··on If nearly all Airbnb reviews are positive, does that make them meaningless?
I observed a similar anti pattern on booking. There, the scores are up to 10, so technically they should be more fine-grained.

It looks like this until they ask you to leave a review. Then the questions are like how was the check-in, the check-out, the parking lot and the cleanliness of the room. Now, if 3 out of 4 are good, then you just scored a dirty place 7.5/10. If you put cleanliness on so-so, then it is 8.7. Scores get super inflated to the point that all places are 9/10.

But I am guessing there is a reason. These aggregators must look like they contain only top-notch ads. And so all metrics are inflated.

veselin··on Smart Algorithms beat Hardware Acceleration for Large-Scale Deep Learning
The new AMD EPYC 7742 should have double the memory bandwidth (they claim they are memory bound) and 1.5x the cores for a similar list price.

But in all cases, I would not expect that a serious research can outright beat the current NNs by 10x on all dimensions. This will take some time (and may not fully happen) and this paper is certainly a great advance.

veselin··on German banks are hoarding so many euros they need more vaults
Switzerland is probably the exception, but 200CHF bills are accepted without problems at most places (1 CHF is roughly 1 USD). There are also the less frequently used 1000CHF bills. I don't remember problems buying stuff with them s well, e.g. at supermarkets, once I bough stuff from IKEA with one such bill.
veselin··on Cartridge cannot be used until printer is enrolled in HP Instant Ink
This model is perfectly good. However, the laws are still outdated with respect to it. Here are simple proposals:

- hp (or Apple) can sign you up for this, but then they cannot call it "buy" in the shop. Rent an iPhone (Android phone) or install a printer may be what it should be.

- they need to inform you about the price. In EU a shop cannot write prices without VAT. Install for X EUR + Y EUR per month is what should be on the sticker.

- finally, there is the antitrust. If somebody tries to replace Y with ads, this must be legally part of the price. Higher price for consumers is what makes a good reason to split a monopoly.

veselin··on Training GPT-2 to Play Chess
GPT-2 is byte pair encoding and transformer. Is there any indication that BPE plays any role here, because the vocabulary is fixed? If not, then it is only the transformer that is interesting and this post is just trying to use the name of the model, because it sounds cool. And actually giving moves directly to transformer may improve the results.
veselin··on Windows 95 UI Design
Many people probably didn't notice that Microsoft Office at that time used custom controls and was a little off from this design.

The design was very nice, but a bit over complicated. Things looked like a control panel, which maybe makes us feel like pilots, but intimidates most users. The open dialog is a good example. Drop down elements, lists, directory list, label for selected directory. Later iterations fixed this and nowadays apps try to avoid selecting files altogether if possible. Overall, design has improved a lot since then, maybe except for the touch additions.

veselin··on Amazon CodeGuru – Preview
I found what it generates.

https://github.com/pediredla/Algorithms/pull/3/files

It looks like a linter, but maybe there is more.

veselin··on How Facebook Avoids Ad Blockers
Nobody forbids them to put ads. However, there are laws (not even talking moral here). If you explicitly download a tracking blocking extension, you want to opt out of tracking, which is required by law that they provide.

What I am saying is that not only they track you, but they explicitly break the top extensions that fix this. From this point of view, I have no regret for any of their ads being blocked.

veselin··on How Facebook Avoids Ad Blockers
Yes. This is horrible behavior from Facebook. I had a similar problem finding a working extension that blocks fbclk id. Well, I found one, but I am not sure I would want to share it, because the facebook engineering team may go after it as well.

This also renders nil the argument about "don't use the product if you don't like their (ad) practices". Tracking across websites without consent is illegal in most of Europe, yet they do it extensively.

veselin··on Computer Architecture – ETH Zürich – Fall 2019
Yes. For PhD, it is paid very well. For MSc and BSc the cost is low. What ends up high are the living costs in Zurich. But given how much these costs have increased in the hot US cities, this may not be a problem.
veselin··on Computer Architecture – ETH Zürich – Fall 2019
This is one of the best courses at ETH (computer science). Too bad I finished the PhD before this course was there.

Another very interesting course is "Reliable and Interpretable Artificial Intelligence".

veselin··on Ask HN: Longest Google Downtimes
I don't know about full outage, but the current "disruption" of Kubernetes Engine lasts for more than a week.

https://status.cloud.google.com/

veselin··on Floating point oddity
There is an interesting paper that can automatically rewrite expressions to improve the floating point errors.

http://herbie.uwplse.org/

← PreviousPage 3 of 4Next →