HN user

fredrb

564 karma

[ my public key: https://keybase.io/fredrb; my proof: https://keybase.io/fredrb/sigs/xmZovlsx_T_xSuRAbVcSTKZ9ggjunzmOj_4gkSjyNgs ]

Posts26
Comments48
View on HN
blog.fredrb.com 1mo ago

Lipstick on a Pig

fredrb
3pts0
filtra.io 1y ago

Interview with Jon Gjengset: Defending Democracies with Rust

fredrb
1pts0
blog.fredrb.com 2y ago

Solving the same problem multiple times

fredrb
1pts0
blog.fredrb.com 2y ago

On bash one-liners: unmaintained go.mod dependencies

fredrb
1pts0
blog.fredrb.com 2y ago

On sound programming: playing a single note with SDL2

fredrb
4pts0
www.lesswrong.com 3y ago

Textbooks on Every Subject (2011)

fredrb
3pts0
www.prepressure.com 3y ago

History of printing from the 20th century

fredrb
1pts0
blog.fredrb.com 3y ago

A case for Go code generation: testify

fredrb
1pts0
blog.fredrb.com 3y ago

Character Encoding and UTF-8

fredrb
17pts17
blog.fredrb.com 4y ago

Investigating man-db internals

fredrb
5pts0
news.ycombinator.com 4y ago

Ask HN: Book recommendations for renewable energy and climate change?

fredrb
25pts29
blog.fredrb.com 4y ago

Rediscovering Roguelike Games

fredrb
2pts0
github.com 6y ago

Terraform CDK

fredrb
4pts0
github.com 6y ago

Germany's Covid contact tracing app is Open Source

fredrb
199pts62
news.ycombinator.com 6y ago

Ask HN: What is your blog stack?

fredrb
18pts31
blog.cleancoder.com 6y ago

REPL Driven Design

fredrb
146pts139
news.ycombinator.com 6y ago

Ask HN: Chef, Ansible, Puppet- When to Use Configuration Management?

fredrb
41pts24
news.ycombinator.com 7y ago

Ask HN: How to manage hotfix branches in a project?

fredrb
1pts0
boxbase.org 7y ago

How to Stop/Help Progress

fredrb
1pts0
github.com 7y ago

Show HN: Node.js Version Manager (Nvm) Alternative

fredrb
1pts0
fredrb.com 8y ago

Node Versioning – A lightweight version manager for Node

fredrb
3pts0
gir.st 8y ago

Sl: a mirror version of ls

fredrb
165pts121
fredrb.github.io 9y ago

Understanding /proc

fredrb
234pts42
github.com 9y ago

Wrote a simple ps clone in ruby

fredrb
1pts0
gcc.gnu.org 10y ago

GCC 6.1 Release Notes

fredrb
56pts4
www.seattletimes.com 10y ago

Humans and robots work in sync at Amazon warehouses

fredrb
2pts0

This news has to be read alongside the immigration visa emission pause for 75 countries by DOS[1].

Since USCIS is blocking Adjustment of Status, and the Department of State is blocking green card emission for citizens of 75 countries, this means that if you are from the following countries you are effectively banned from getting a Green Card:

Afghanistan, Albania, Algeria, Antigua and Barbuda, Armenia, Azerbaijan, Bahamas, Bangladesh, Barbados, Belarus, Belize, Bhutan, Bosnia and Herzegovina, Brazil, Burma, Cambodia, Cameroon, Cape Verde, Colombia, Cote d’Ivoire, Cuba, Democratic Republic of the Congo, Dominica, Egypt, Eritrea, Ethiopia, Fiji, The Gambia, Georgia, Ghana, Grenada, Guatemala, Guinea, Haiti, Iran, Iraq, Jamaica, Jordan, Kazakhstan, Kosovo, Kuwait, Kyrgyz Republic, Laos, Lebanon, Liberia, Libya, Moldova, Mongolia, Montenegro, Morocco, Nepal, Nicaragua, Nigeria, North Macedonia, Pakistan, Republic of the Congo, Russia, Rwanda, Saint Kitts and Nevis, Saint Lucia, Saint Vincent and the Grenadines, Senegal, Sierra Leone, Somalia, South Sudan, Sudan, Syria, Tanzania, Thailand, Togo, Tunisia, Uganda, Uruguay, Uzbekistan, and Yemen.

[1] https://travel.state.gov/content/travel/en/News/visas-news/i...

I’m sorry that has been your experience. The culture you’re brought up in is hardly representative for 8 billion people’s experience.

It’s not that bad if you need to deploy at least 3 things and for most cases it beats the alternatives. You can get away with a bootstrapped deployment yaml and a couple of services for most scenarios. What should you use instead? Vendor locked app platforms? Roll out your own deploy bash scripts?

Sure the full extend of Kubernetes is complicated and managing it might be a pain, but if you don’t go bonkers is not that hard to use it as a developer.

Location: Berlin, Germany

Remote: Indifferent

Willing to relocate: not at the moment, but open to discuss depending on the job

Technologies: backend/systems engineer generalist. At the moment I work with Go, Kubernetes and Linux. I’m interested in C, Rust and Python as well. Would work in any programming language.

CV: Upon request via LinkedIn or email. I have a outdated one here [1] without much information about my current employer.

Email: fred.rbittencourt [at] gmail [dot] com

Sharing preferences and opinions on code ergonomics certainly has value for me, and I bet it has to other people too. This is, after all, a developer's forum.

I'm certain your opinion on petunias and your possible distaste for orchids will be welcomed in a flower-news type orange site. :-)

I don't work with it either. But I find that learning the abstraction below where you're working at can be quite beneficial to understanding the constraints of your layer, debug, and solve problems.

E.g.: Learn the basics Transport Layer protocols (TCP/UDP) if you work with HTTP

It's interesting to see how many people in this thread have had negative experiences with OOP. As much as I don't do OOP that much anymore, I think it had a positive impact in me. But like every popular practice, there is a lot of bad patterns you have to navigate through.

Things like depending on interfaces as opposed to concrete implementations; or prefer message passing over direct data access are practices that I learned in OOP that I still value. The "Small Talk crowd" from the first team I worked in and influential authors in the topic (specially Sandi Metz) still have a dear place in my heart for how they improved the way I view software design.

Thank you for these points. I've made some corrections in the post.

consider that something like à can consist of either a precomposed "à" code point or an "a" + "` diacritic" sequence

If Unicode provides a precomposed combination doesn't it mean that in fact has a code point for every character? Regardless of offering diacritic combination codes?

Right. Impossible might have been an exaggeration, I will fix that. The point is that if you're reading a file with the text "hello world", you can only make out the characters because you know the encoding. Given two completely different encodings that map the same hex values in the message it would be impossible to determine which is the correct string. There is no such thing as plain text.

My worst experience was when an interviewer told me to stop doing the exercise because time was up, and proceed to say that they could "solve this exercise in 30 seconds by copy-pasting an answer from StackOverflow". They mentioned in the beginning of the interview that I could Google whatever I wanted and then said I "should've taken the hint if I wanted to complete the exercise".

The complete interview was a joke. The person didn't know which position I was applying to; another guy joined the interview halfway through and asked if he should take over; and the worst: the main interviewer was boasting about working 12 hours a day as a contractor and getting double the salary from the actual employees.

They didn't make an offer.

On Code Review 5 years ago

Well; code review is not QA. My approval means - I'm OK with how the code layer is knitted. It doesn't mean I've tested the changes.

I'm 100% on-board with this. However, I understand were OP's mindset comes from. A few years ago I was working at a development shop in a fairly large project, where we had little to no automated tests. We frequently had PRs that would break main features. At some point developers were required to perform smoke tests alongside code reviews.

This is very interesting. Unfortunately it seems to be closed source and they're still working on a more technical blog post.

I wonder how they encode all the information in the PNG file? Apart from the .zip with the entire ROM I assume they snapshot the current memory state on the beginning of the Quote and all the subsequent inputs.

How to match "interview kind" to candidate? maybe ask them which they prefer, I guess?

I don't think it's a matter of candidate preference but rather position need.

Some companies need Computer Science / Engineer mindset to solve complex problems. Some companies need XYZ framework developers to deliver customer projects. FAANG companies usually need the Engineering role and developed an interview model to select those.

The problem is when companies that need developers apply the same interview mindset that Google does.

I recently switched jobs and got interviews in 5 big companies for mid/senior Software Engineering positions. All their processes were fairly similar: Two coding interviews, one system design interview and a conversation with the hiring manager. I might be biased because this process was beneficial for me, but here are my 2 cents on it:

It's easier to get a position in a stack you don't have professional experience with. You're tested for your ability to learn CS concepts, not stack specific knowledge. All 5 positions I interviewed to had different technologies. If I had to learn the specifics of each before applying, I would likely not get offered any positions.

Wouldn't a tracing app make more sense than having a rigorous border tests? It takes one miss-tested infected person to start a second wave in the country. So I would assume that the investment to make sure businesses provide the QR pays off testing everyone and risking another lockdown. I'm also not sure countries have the resources to enforce huge amounts of tests at the border.

I would like to live in a society where temporary actions made in the name of compassion during an emergency can be overlooked.

This could be read as:

the end justifies the means

"Compassion" can be stretched to mean anything as long it's good to someone. I think IA's cause is a very noble one. I can stand behind that. However, noble causes don't give you legal exemption.

Do you deploy your app every time you write a blog post? I'm on Jekyll also. I wonder if you could hook the `_posts` folder to some sort of CMS and update the content without deploying.

This isn't even remotely difficult

Not technically but in practice it is difficult.

- What happens if I opt out but you reply with an "offensive" word in the thread I'm in?

- If two people are discussing and one uses "offensive" words what do I see? Nothing or one person screaming at the void?

The other problem I see having more confirmation bias. We would have a split in the community between politically correct and incorrect. You'll get deeper in the rabbit hole if you only talk to people that have the same views as you. Regardless of which side of the wall you're at.

Edit: Formatting

Self-aware Machine Learning

    procreationist
    1. relating to or advocating the theory that sex is the only biological sex, or as opposed to that other sex identified with reproduction "a procreationist approach to reproductive science"

    2. a word that does not exist; it was invented, defined and used by a machine learning algorithm.

I had the exact same issue facing hard problems in my work. I noticed that my main issue was keeping focus. My solution was to introduce on distraction free 90 mins slot of work in the morning (my most productive time) to tackle the hardest problems. No e-mails, no phone and no de-railing to other topics. The results so far have been great. The inspiration came from Deep Work [1] by Cal Newport. The book describes the philosophy behind it.

[1] https://www.amazon.com/dp/B00X47ZVXM/