HNHacker News
TopNewBestAskShowJobs

cntainer

525 karma · joined September 6, 2018

submissionscomments
cntainer··on Tell HN: Beware 'Ungrowth' in Your Job
Interesting, building a team and operating as part of a now stable team ca be different affairs so that might be part of the issue.

Anyway, the interest from other teams is a good sign that your skills are still valued elsewhere. Moving on might be the best choice especially if you've been struggling with this for some time.

cntainer··on Tell HN: Beware 'Ungrowth' in Your Job
Does anyone in the team understand what you bring to the table? Is your contribution key to the team's success? If that's the case then the others could serve as promoters for your case in front of the boss who apparently doesn't see or appreciate this.

But if this is not the case then maybe your current skill set is not a good match to what is currently needed. I don't know, maybe someone else is already covering the things that you say you bring to the table, or the team's activity and goals are just a bad fit for you specifically.

> because I'm being forced to be something I'm not

Many managers see this as trying to help you grow, by getting you outside your comfort zone. In the end it's your choice if you want to play along or find a team/boss that makes better use of your contribution.

cntainer··on State Machine in Real Life
Not all writers apply the "Chekhov's gun" principle.

Inconsequential details can be fun in stories but they're not always appreciated, especially not in non-fiction.

cntainer··on State Machine in Real Life
I guess it makes sense if the place is huge/hectic and you want to "industrialize" the serving of food while reducing mistakes (wrong table, wrong order, kitchen mixed orders, etc).

It sounds "cool" when you say that the transitions between states can be handled by anyone on staff with this type of system but it would also feel impersonal if you have 4 different people handling each state: take order, pay, bring food, ask feedback.

cntainer··on Why criticism lasts longer than praise
I completely agree. From my perspective there's the day to day operational kind of feedback: "X, your latest change broke production the 2nd time this week, let's see what we can do to prevent that". This needs to be addressed as part of the daily work. Business as usual for someone leading/managing a team.

And then there is the periodic performance review were we want to take a high-level look at changes in impact, outcomes, behavior over longer periods of time.

cntainer··on Why criticism lasts longer than praise
Any process can easily be abused, especially when the people responsible for driving the process are doing it for the wrong reasons

I think that shouldn't discredit the original concept though.

> My suggestion was to fire Jim but that process improvement was denied.

Funny, and maybe the best solution, given the scenario, but I guess my mind was set on more constructive criticism :)

cntainer··on Why criticism lasts longer than praise
It really depends on the system. I agree that most companies tend to end up with a cesspool of middle-management political games but that's not something unavoidable.

I've seen examples where the objectives of the management and the teams are sufficiently aligned by the owners to create win-win situations.

Yes, it's not that typical, but it's possible.

cntainer··on Why criticism lasts longer than praise
The way I'm sharing it with the person being reviewed is: "This is all the feedback you got from people you work with", without attaching names to it.

If I have reasons to think the person will take it personally or the way it's written is too negative I refrain from sharing it raw and I prepare a tl;dr.

What's important is to extract the main points from the feedback.

> Assuming it actually is anonymous would be all downside and no upside for the employee.

Not sure I understand why.

cntainer··on Why criticism lasts longer than praise
That's a choice not a law

EDIT: in most successful teams I know manager and team are in the same boat

cntainer··on Why criticism lasts longer than praise
I think that's a matter of trust between the manager and his team. If the team culture is set for continuous improvement this kind of feedback should be considered normal. If an employee is at risk for termination that won't be determined just by some peer feedback.
cntainer··on Why criticism lasts longer than praise
I'm curious how this applies to employee performance reviews. Could feedback about what an employee needs to improve be perceived as criticism no matter how you try to frame it?

What I noticed is that, when I have to review someone in my team and I gather feedback from other members of the team, I rarely get any critical input, even if the feedback is anonymous. Many avoid giving what they perceive as negative feedback even if it's framed as an opportunity to help the other person improve.

cntainer··on The End of CI
Honestly diversity is a good thing. It's good that different people are trying to solve problems at the heart of software in different ways as it creates new perspectives and possibilities. Now, after reading these replies I'm really curious about stuff like darklang and Bazel.

What happens is that people don't understand that most of these higher level solutions are very leaky abstractions, they aren't the silver bullet marketed in medium articles. Yes, they can save you a lot of time and headaches in specific scenarios but when you encounter one of the leaks it can take you weeks to get to the bottom of it.

If the teams doesn't understand what problems the tool is solving and if they have that problem then they might be just cargo-culting. An example of this is kubernetes. I know teams that used kubernetes just because everybody else is using it, they didn't actually need it for their monolithic java spring app. They think they avoided accidental complexity by using kubernetes but in fact they just added accidental complexity to their project. And then they add a new tool that makes it easier to manage the complexity of kubernetes, and so on.

Anyway, I'm probably just a rambling fool and I should appreciate that all this generating and shifting around of accidental complexity will actually mean future job safety for guys like us.

cntainer··on The End of CI
I'm in the "continuously improve the team's process to best suit its needs" crowd.

Sometimes TBD is the answer, sometimes you need something else.

What I did notice is that, with time, mature teams end up simplifying processes in order to reduce friction and increase output.

cntainer··on The End of CI
Well, I believe "absolutely doing it wrong" is a bit strong-worded.

Of course you can do it like you said but that means longer feedback loops in general. If the team wants to integrate more often and reduce feedback loops then that model evolves.

I'll give you an example. In the team I mentioned in my top comment we were initially using a branching model with master, releases/, hotfixes/, dev, features/, which gradually evolved into master, dev, features/, which finally ended up as master, features/*. With the important mention that for small changes/fixes that needed to get deployed quickly nobody would bother with a branch they would just push to master.

This allowed us multiple production deploys per day per developer with no risk. That's why I said I don't get the point of the article, you can absolutely get those short feedback loops and continuous integration if you want it, just need to setup the process that way.

cntainer··on The End of CI
Wow, that sounds crazy. I'm curious what kind of system are you building and what types of tests are you running to get to those numbers.
cntainer··on The End of CI
Emphasis on all :).

Of course the CI should always run them, but that should normally be as a confirmation/safeguard.

I've seen too many cases where the devs wouldn't even run the code locally. They would push it and expect the CI to do all the work. That's how you get shitty CI that is always broken.

cntainer··on The End of CI
Well, how short the feedback loop needs to be is something that can be controlled by the process, and the team sets the process.

I can have the normal flow, which takes minutes and runs all the tests and other stuff I might have on my pipeline (security, performance, etc). I use this for typical day to day work on features. I don't care if the deploy takes 50ms or 5 minutes.

I can have a fast-track for critical production patches. I skip all the main CI steps and just get my code quickly in production. If done right this takes seconds.

I didn't know about dark but I've seen this type of promise too many times, so I'm pretty sure there are many tradeoffs hidden under the nice shiny exterior. I can't know until I try it, but that kind of complexity doesn't all just disappear, i always has a cost even if it's out of sight.

cntainer··on The End of CI
I fail to see the point being made in the article. CI done right is the best thing that ever happened to me in terms of collaborative productivity.

Of course there are many pitfalls. Like with any tool it becomes trivial to use it wrong. Integrating less than once per day and deferring all testing and linting to the CI process is an anti-pattern and the issue is not the CI process but how the team chooses to use it.

For example I worked in a team of 10 and we were doing multiple production deploys per day. This was made possible by a great CI workflow. Everyone was running tests precommit and focusing on keeping the pipeline green. Yes I've seen the opposite as well, but that usually is a symptom of issues with the team not the general concept of CI.

Not saying that there isn't room for improvement but all the real-time collaboration features I used on low-code platforms feel like a step back.

cntainer··on Small actions make great leaders
I don't want to admit it but I'm guessing this scenario happens more often in the real world. And I'm sure most Gordons would approve this behavior much more readily than the one described in the article.

Is this some kind of leadership? Or is it just the survival of the fittest? :)

cntainer··on I cheated on my Microsoft interview (2019)
great, now I need a new branch of math to be able to continue, lol!
cntainer··on I cheated on my Microsoft interview (2019)
It does sound like overthinking to me, but context is king. Without context/requirements we're just guessing.

Maybe the job interview is for Space X and they're working on some new system of mini-satellites-on-a-rope called Hyper-rope, or maybe google is trying to pivot their failed Loon project into some kind of air-born connectivity solution, and the rope is actually a very long fiber-optic cable.

Or the interview could be for an online eCommerce platform and the person being interviewed will most likely have to work in a huge heterogeneous codebase with all the important technical decisions already made.

otherwise the question doesn't make sense Well that is my point. I love these types of subjects, but when I'm having a beer with friends and we find a puzzle like this one and we try to take it as far as possible without going into fiction/bullshit territory.

So it could be useful to check/signal for culture fit, and in OP's case it actually worked like that OP: "We value people that love to get into this type of discussions/arguments" Interviewee: "Gosh, you guys bored me to death during the technical interview but it seems like we have similar tastes when it comes to theoretical puzzles so I'll give you another chance"

Nothing wrong with this though. It just proves that interviewing is a complex process and actual merit and success are highly subjective.

cntainer··on I cheated on my Microsoft interview (2019)
Yes, but that's still a geometry problem. Don't get me wrong, geometry was my favorite branch of mathematics in school, but I don't see how this is relevant for most software engineering jobs.

I guess this type of question might serve the purpose of finding like-minded people with similar interests (in your case geometry or puzzles) but it might alienate others.

cntainer··on I cheated on my Microsoft interview (2019)
sure, the answer might seem counter-intuitive but the method to find the answer is not, as long as you know the connection between a circle's circumference and its diameter

I still fail to see how this is relevant for a technical interview, assuming that we're trying to hire a software engineer. Fun, but not relevant.

cntainer··on I cheated on my Microsoft interview (2019)
add 6 feet to a rope around the world, stretch it out and how far off the ground would it be

is this a technical puzzle/question? to me it reads like a middle school geometry question. it would be fun to discuss it with friends/colleagues but I wouldn't expect it during a software engineering interview

cntainer··on Human genetic engineering is coming
I thought the same before reading the article.

After reading it I feel like Gattaca barely scratched the surface. It was actually a pretty tame movie.

Some of the points made by the author are far scarier: gene editing startups with VC funding and sociopathic founders or amoral autocratic governments (think N.Korea, Russia, etc)

cntainer··on Hacking attractiveness biases in hiring? The role of beautifying photo-filters
I'm sure you can reduce bias in this way but it still feels incomplete. I'm thinking another (more efficient?!) way would be to teach interviewers to detect and manage their own biases, both positive and negative.

For example if I'm interviewing someone for a technical position and they're very attractive or even dressed/groomed excessively I'm making an effort to not hold that against them. I'm aware that I have a bias on this so I'm actively trying to have a balanced perspective during the interview.

cntainer··on Hacking attractiveness biases in hiring? The role of beautifying photo-filters
Won't the bias still be present in the report? For example if a candidate left a good impression on me I'll definitely make sure that the report captures that. Not because I'm a bad actor but because I don't know any better, I don't realize my good impression is biased.

At that point the panel makes the call based on a biased report and it thinks the decision is unbiased which is not true.

cntainer··on Ruby Together
Better readability for fellow humans.

I think these 2 quotes by matz describe best ruby's philosophy.

> I hope to see Ruby help every programmer in the world to be productive, and to enjoy programming, and to be happy. That is the primary purpose of Ruby language

> Often people, especially computer engineers, focus on the machines. They think, "By doing this, the machine will run fast. By doing this, the machine will run more effectively. By doing this, the machine will something something something." They are focusing on machines. But in fact we need to focus on humans, on how humans care about doing programming or operating the application of the machines. We are the masters. They are the slaves.

cntainer··on The Death of Process
I've been doing something similar when coding.

On one long-term project we even had special comments with an expiry date attached. Every time the build was running a script would scan all comments and print to output those comments that were expired to make sure someone revists them. And you could either remove, keep and extend expiry or modify that code, depending on context.

I guess it never crossed my mind I could do the same when creating company policies and processes.

cntainer··on The Death of Process
Actually I think the advice is spot on if you want to continuously evolve your processes.

Every time you revisit a process you can keep it, kill it or amend it. It sounds pretty evolutionary to me.

What I liked is that adding some fail indicators as part of the policy actually gives ammunition to the people that want to change the policy for the better against people that are abusing the current form of the policy.

← PreviousPage 2 of 4Next →