HNHacker News
TopNewBestAskShowJobs

xemdetia

997 karma · joined July 3, 2012

submissionscomments
xemdetia··on Why Is the Migration to Python 3 Taking So Long?
I don't think it will make people less likely to use Python overall, but for certain categories of projects there are some things that are just done better in other languages. Both Java and Go for example have specific programming language constructs and contracts to ensure that codebases can move from version to version easily and I do not feel like there is a dynamic/untyped language that really provides that same level of stability. The ones that do get close to that are the ones that are extremely small in scope and are not in the same class of batteries included language, and because of their small scope they have a general limit of change.

At a certain point this sort of compatibility/forward motion of a codebase through big language revisions is something that has to be designed as part of the language in either being able to break it down into small enough chunks to chew through in pieces (updating a submodule with the updated language without affecting anything else), completely transparent to the code being run through it (this happens for compilers for C for different standards), or to have a version to version automated rewriting mechanism that is so reliable the outcome of the automated tool is not in question (tools like Go's gofmt). Python in my opinion only has partial solutions to all of those answers so it turns into a lot of hand work.

So while there are other languages that may do other things better there are still a class of programs that are very effective to write in Python, and that's plenty enough reason to keep it around. Do not forget that Python 2 was released in 2000 and Python 3 was released almost a decade later. The general time scale makes worrying about the next release for many people, but for people who do they start considering other languages because that's important to them.

xemdetia··on CS:GO players banned by Google's new chat AI
Even on the scale of general toxicity CS:GO is so stifled that you don't even interact with your opponents that much anyway. The only thing I hope this AI takes care of is the YouTube preacher bots. You usually get the grief from mistakes/uncooperative teammates.
xemdetia··on CS:GO players banned by Google's new chat AI
Actually if this is faceit this is a reduced community in general so the kid gloves are off elsewhere.
xemdetia··on Pack Your Bags – Systemd Is Taking You to a New Home
Actual spec for systemd-homed: https://github.com/poettering/systemd/blob/homed/docs/HOME_D...

"If the UID assigned to a user does not match the owner of the home directory in the file system, the home directory is automatically and recursively chown()ed to the correct UID."

I wish systemd fixed centralized UID/GID management first before trying to do this bit.

xemdetia··on Docker Compose reads your “.env” without opt-out
You would be surprised on how large a hurdle this is, even inside 'serious companies' when stable external/internal artifacts come up. A lot of developers who cut their teeth on these public repositories complain heavily over the 'friction' of ensuring that they have a reliable place to pull things from. This isn't unique to docker and also includes things like python, ruby, go, node, and other modern packaging systems. The fact that in 3 years from now when they need to update the code the vulnerable/deprecated package is gone/changed URL/whatever seems to be a learned lesson.
xemdetia··on Show HN: Pipedream. Develop any workflow, on any trigger, with auth and no infra
I do not feel that this is the best article to sell me on your product. It compensates for trying to describe a rock solid use case with a lot of links to other things with limited context (that are probably brilliant if you knew that context). If I wanted to watch a 15 minute video I would watch that instead. I feel like your pipedream.com landing page does a better job describing why I want to use your product.

I wish this article was a more digestible single case as an introduction that showed value rather than saying 'you can run anything!!! for free!!!'

xemdetia··on Visa, Mastercard, Stripe, and eBay exit Facebook’s Libra project
I'm more of the opinion that there was a Q2/Q3 deadline to get some sane regulatory framework by the Libra team and they just whiffed on it or it was wholly insufficient for normal international banking standards (which was probably laid out by all the parties that left). The fact that everyone seemed to bail all at once sounds like there was just a lack of commitment/slipped deadline by the Libra side. Generally as a new thing is being stood up under a regulated framework there is some slack provided to get the ship in order while other interested parties look on, but at a certain point major requirements must be done. If you are one of the interested parties and it doesn't look like the other side is making sane progress, the hammer drops swiftly.
xemdetia··on The most advanced MySQL raytracer on the market
This is actually a pretty neat mechanism that builds a string (including BMP magic number and header) and shoves it into a dump file, doing a ray trace per byte. I wish there was a commented/not collapsed version of it to better enjoy reading. Right now it's just a blob.
xemdetia··on Perl is dying
The thing that RHEL is trying to fix is to prevent customers from being tied to the system python/perl and should install a version that works for them and the application they are trying to run. People installing random modules into the same perl/python as is used for system startup/critical software has always been a problem but it is also one of those things that makes having a long term LTS nearly impossible because you can't separate the user needs vs. the distribution needs and trying to fix anything turns into backports to weird ancient versions. This way distros can package and update the things they need independently from everything else and not disturb the user, and also provide a more comprehensive suite of packages that also don't disturb the system space. This is similar to how Amazon Linux is setup a bit.

A better example is a user I should be able to install python 3.7 and use it, even if the system libraries for the core packaging is based on python 2.x. Traditionally most users would just build their system scripts on python 2.x (because it is there), which means that if you upgrade the distro from RHEL X to RHEL Y (which brings a python 3.x) you break a user's environment. This was a constant problem when you were trying to go through the RHEL 5-6-7 upgrade paths among other things.

It hopefully will be resolving the issues of people and packaged software using weird old versions because it is there and breaking when something changes. My favourite example is having to write in ancient bash just to support MacOS which still ships bash 3 something.

In a shorter version, the interpreters are still there and buried, just not on $PATH and given to the user as a what they should use.

(This is opinion based on how I have seen people abuse systems and try to upgrade them over the years).

xemdetia··on Open offices are a dead end
I think the trouble is more that open office is generally not something that most people can stomach as a deal killer as a seeking employee. You also generally are deep into the interview process by the time you see the quality of the open office space, and the place you would work maybe doesn't look miserable but its one desk reorg away from making you utterly miserable. There's also the comparative misery- is this more miserable than the job that you are trying to leave? Of all the jobs I looked into in urban northeast areas all but one was open plan, and the last one was cubes. I didn't really have much of a choice.
xemdetia··on NUMA Siloing in the FreeBSD Network Stack [pdf]
I would say that has less to do with Netflix and more the recent generation of Intel/EPYC server computing. These numbers seem pretty standard for this generation of Skylake/Cascade Lake and one NIC per NUMA also feels pretty standard to me. The patches also seem to be the usual problem when you are starting to care about NUMA, where there are a couple places where it just wasn't added but you need it.
xemdetia··on When Your 11-Year-Old Says No to a Smartphone
I don't have any insight but from just various anecdotes about kids getting smartphones I would say: they are now getting them in early primary school rather than late secondary school, exceptionally helicoptering parents have only become more obnoxious, and most kids are still pressed into many extracurriculars. If I was of the same mindset when I was child in this day's age being exposed to other children with completely obnoxious phone usage would be completely off-putting and I would not want any part of it. It might be that the observed negatives of having a smartphone as a child from peers and parents would be probably higher than any perceived benefit. Then with the way I see some parents help/press kids into after school activities many probably are crying for that separation to have a space away from their parents (which is one of the most valuable experiences schools provide), and so keeping that wall there is inevitably valuable.
xemdetia··on Going Fast Slowly
What are you talking about that they did 'not offer Varnish for Buster?' Was there a packaging problem or more context you could add here?
xemdetia··on The boring technology behind a one-person Internet company (2018)
Not to mention that he might not stick with AWS if he runs the numbers- he might hop ship to a different cloud provider if he gets a better deal. I don't think it's appropriate for such a fledgling enterprise to lock in to AWS-isms so they can keep the change provider cost as low as possible.

Also, people seem to be dismissing the value of a rock-solid local end-to-end dev stack which with the latest iteration of technology I feel has become very complicated and expensive. The OP can run the same Ansible for his dev stack as well as his prod and his dev stack doesn't turn into an AWS bill. Most of the AWS managed tech & services is only reliably testable on AWS at a functional/integration level, which is a cost that a company this small shouldn't have to absorb.

xemdetia··on California Labor Bill, Near Passage, Is Blow to Uber and Lyft
"I have zero faith in the courts’ ability to distinguish this. In the case of Uber, their business is providing the back-end, and their revenue is a commission for doing all the back-end work. They are not in the business of driving cars — no Uber employee drives a car — and yet this bill would make the car drivers employees."

I find this an interesting interpretation of how Uber defines their business. If Uber only provided the back-end for their work, the common consumer wouldn't know about Uber, you would know the driver directly and reach a deal with the driver directly. I would relate this most closely to things like in China where you can pay via WeChat or elsewhere with Square where they just facilitate the transfer of funds. They would be a distant party to the work actually being done.

Instead the average consumer knows Uber, goes to Uber with the goal of fulfilling their need of getting personal transport door-to-door, and the act is delivered by their contracted driver. They expect Uber to handle the complaint escalations, money handling, route planning, and basically everything related to that goal. If Uber provided only backend you could create your own frontend/theme to Uber for your local town (like you would a wordpress for a SMB) and create a business around just that. While there may be some back and forth on interpretation I think the real test is that based on all those steps that have to happen if the ride itself was omitted from all the services they created would Uber still be able to function and the answer is no which would make it part of the "usual course of the hiring entity's business." If Uber (not counting their other lines of business) didn't actually arrange rides for people, they aren't a company providing a marketable service anymore.

xemdetia··on California Labor Bill, Near Passage, Is Blow to Uber and Lyft
I see your logical out being close to (IANAL):

1. with a contractor you are creating a contract around the deliverables and the time frame for those deliverables. You do not have the ability to reach into the contractor and have any say in how the work gets done (e.g. can Bob work on this task Tuesday instead of Thursday even though it's not related to interfacing with me). To me this satisfies the "person is free from the control and direction of the hiring entity in connection with the performance of the work" part.

2. "the person performs work that is outside the usual course of the hiring entity’s business" is the tricky one, but I think it more has to do of what you explain your business to be. If you are running a SaaS platform and enter into a contract with someone who provides software development expertise the relationship between your business and the contractor is different. In the cleaner case in one of the other trajectories there is a difference between someone providing supplemental cleaning services for existing cleaning businesses and someone who provides cleaning services. The relation is probably distinct enough to be interpreted this way, as someone pursuing to sell their capacity to someone else is different than a business acquiring a contractor to deliver the goals of their business.

In the Uber case a driver who works for Uber to deliver their core business is different than a company formed to provide taxi service capacity to other companies who are running a taxi service.

3. Then the last clause "the person is customarily engaged in an independently established trade, occupation or business" I think for software development this is easy to say when someone is trying to demonstrate themselves as a contractor vs. someone who is 'hired' as a contractor.

I think if you are worried about really the first case that is just something that should enter your contract language as a deliverable of the other entity. The relation between you and the entity you are contracting is different than discussions with the downstream contractors. Since the smaller contractors inevitably have this end up being the same person this could be confusing. Based on the writing of this rule I feel like you would be able to ask the entity for updates, information related to the deliverables, schedule meetings, and so on. You may be able to ask for accurate accounting for hours worked but you can't have any say when those hours were because the entity would be billing you the number of hours.

For the second case I think you would be fine if you were soliciting someone to contract some hours to work for you because the other person would be representing themselves as a consultant who has hours to sell. You would be buying hours of work in expertise X which is different than your goal of selling Y. If the relationships were built this way then I think this satisfies the third clause as well as because then this contractor would be in an independent business who could satisfy the terms of a contract between entities.

I feel like as long as you treat the other party as a business and not a person, and the other party understands this you are able to operate normally. You may have to emphasize this nature more to be compliant with this rule and focus on milestones and deliverables and contractual obligations (it is still fair to say to enter a contract that says it has to be delivered by 2pm Friday), but you have to keep your hands off defining hours to be available/hours on call/punch in and punch out times, etc. I would stick with buying and selling hours of work for some contractual outcome.

xemdetia··on Questions to ask a company during a job interview
When I interview that's my first question, because it helps set the stage for being it a dialog instead of a Q&A barrage. It's much easier to also wash people out at this stage (depending on what # you are in the interviewing sequence) when they have strong opinions of on call rotations, remote work, etc. Questions often come to mind as you go along through an interview process and I'd rather you ask up front then have it sit in the back of an interviewee's mind as something they want to remember to ask.
xemdetia··on The Cult of Kubernetes
I'm starting to feel that the whether or not you need Kubernetes is closer to old conversations related to whether or not you need a dedicated DBA. Can your organization survive and recover with hourly/nightly backup restores to recover from an incident? Is your replication so complex that you really need a guy to ensure that's never getting into a bad state? Worse case scenario can most people working on the project restore the database to a valid state if something does go wrong? I feel like these questions have similar representatives in whether or not Kubernetes is right for an organization.

Kubernetes also makes more sense if you look at it as a common way for an organization to run applications among disparate teams with a shared operations infrastructure. It provides a standardized model for things to work the same enough to work the same. If you are only delivering one kind/whole organization thing and it all looks and quacks like a duck maybe you should just deliver a duck instead of putting a duck hat on Kubernetes and asking it to quack.

I don't think there is anything wrong with designing an application that would transition easily into Kubernetes but I feel like many of the proposals/PoC I have seen in the last few years are either fresh systems that get consumed by Kubernetes complexity or are poor replacements to systems that already exist and only seem to serve as resume padders for the team architecting the replacement which gets a viking funeral as soon as they leave. Often the latter case is because the underlying architecture and goal of the system is pre-Kubernetes and doesn't fit the model well of having mostly stateless/replaceable pieces.

xemdetia··on Sorry, we can't join your Slack
I felt that it was laid out fairly well in this essay. They described their 25 year rule, and described a lesson they learned in the first 18 months of their company from a few attempts really wasn't working for them. Because they learned this lesson early on they refused a client's request because they were confident in the lesson learned not providing the right kind of value for their organization or their clients. Their rule biases learning from early things that don't work so that they can focus the most energy on things that are working.
xemdetia··on Slack’s Shares Plunge After It Predicts a Larger Loss
This is the ultra-aggressive marketing that Slack has been pushing ever since they got any traction. They seem to pitch that idea to anyone who will listen even though like you say, it makes no sense.
xemdetia··on Windows or Chromebook? A Best Buy salesman told me it isn't even close
I prefer a small factor notebook (or netbook if they become relevant again) with as long battery life as I can find. As soon as the smartphone breaks down I pull out the compact laptop and do what I need to do. I haven't seen any reason to do anything else that isn't a hyperspecific kludge. Especially when you are issued a work laptop.
xemdetia··on Software Vulnerabilities in the Boeing 787
I couldn't find the right words to describe it, the other person who commented was a bit closer. At a certain point I would assume the Boeing 787 design would have interchangeable configurations that would not be dependent on the airframe and avionics. I wasn't sure if cabin, interior, model, or something else would best describe what I meant and chassis and body for a car was the best I could come up with that could describe these two changeable parts unlike the unibody chassis. It looks like configurations is the most appropriate word.

I was hoping that the person I commented to could point us at some fun manuals to describe how these configurations worked at a technical level.

xemdetia··on Software Vulnerabilities in the Boeing 787
Would you say as someone who deals with these larger planes that at least the 787 current gen is closer to an older style chassis and body for cars? I have always imagined/assumed that 787's are not unique that they would be the same 'chassis' for a cargo plane or a passenger plane, and it really would have to do with how they fitted the plane for purpose?

This is part of the reason why I agree with you, because I don't see why the 787 would be unique by mixing avionics/mechatronics with the passenger systems but I don't know enough to say it with confidence. They would have designed the passenger systems to be independent and replaceable (especially with the knowledge gained from the legacies and upgrades of other planes like the 737).

Is there any public guides for 787 chassis and maintenance that you could point to as being reasonable things to read about this new style plane?

xemdetia··on Japanese anime studio Khara moving to Blender
I've given up on GIMP in a sense, Krita is the closest to what I actually want it to be but it's still missing some key stuff for me when it comes to vector selections and font work (but font work on GIMP was also less than great). It's much closer to what I've wanted GIMP to evolve into, so I've been crossing my fingers there.
xemdetia··on The Sinister Brutalism of Shipping Container Architecture
I'll also throw in the fact that even for some reason you wanted metal, we've also solved the 'make a metal building wherever you want it' fairly well too. It is designed for adding doors, windows, comes in a kit form, and also breathes and can be insulated to have pleasant thermal properties. Even just in $/sqft having rechecked on this idea the price was never so much better than other kinds of buildings that are more suited to be in livable spaces.

Really what I would have wanted to see is people handling disposal of containers and then using the broken down materials to build a structure and/or just being smarter about reclaiming the material, but I haven't seen that come up in passively looking into it.

xemdetia··on Ask HN: Why is everyone here so obsessed with Lisp?
One thing not mentioned in the current set of responses is the REPL style and interactive coding style that you can have with a LISP that is different than what a traditional compiled language gives you in the edit-compile-run-edit loop or a dynamic language gives you in the edit-run-edit loop. When you are using a REPL you can poke and push at any part of the system like a debugger but the system is still alive. Without that interactive nature sometimes you end up doing print/debugger work to understand some quirk of a datastructure but in a LISP/REPL it's plainly visible and you don't have to think about it.

If it's integrated with an editor you can load functions or different versions of the function and see how each work with live data, you can slurp new data in, and all sorts of flexible dynamic things that let you find the program you want (which always helps when using third-party or unfamiliar code). This is more a feature of all kinds of REPL languages and not wholly specific to LISPs.

One of the basis of a LISP/Scheme language is that it is constructed of very few basic primitives that are assembled into a greater system and that greater system is part of your program instead of being things you don't touch (like libc), and you are (generally) welcome to touch them, alias them, or manipulate them to help your goal and program. This allows things like being able to temporarily hook a function call to add some debug information and then unhook a function call via a REPL and carry on. I find that pointing to people to r5rs https://schemers.org/Documents/Standards/R5RS/HTML/ and focusing on sections 4, 5, and 6 help show off how little is required to describe the basics of the language.

xemdetia··on Advice to my younger self: become allergic to the churn
Some of us deal with the fact that the people maintaining the CI solution keep breaking our pipelines without any code changes in of our scope of responsibility. This becomes the churn as you push empty commits trying to troubleshoot why your builds don't work and it takes >1 day to get things working again. Most hosted CI solutions are entirely inappropriate for some organization's business goals and requirements, so you end up dealing with it being a B or C tier service in an organization that is changing.

I would suggest that there are definitely some organizations where you can't trust the pipeline to work reliably, and the cost of figuring out what went wrong becomes the churn.

xemdetia··on Ask HN: Does a bootcamp make sense for someone with 20 years experience?
Are you sure you need a bootcamp? It sounds like you are selling yourself short and/or not getting job prospects in the right fields. As someone who recently was reviewing resumes bootcamps are so variable in quality that they are in the same boat to me as no-name certifications. A bootcamp is just making the time to spend dedicated effort for you to learn something and it's only going to give you as much as you put in. If you've spoken to people and heard success stories it's likely not because they went to the bootcamp but they used that time effectively- this is the common advice for any of these short-term career shift sort of programs for any industry.

Are you sure that AI or large scale systems actually exists in the markets you are looking for? Not all markets support the same industries and as you would probably know the number of times it's just lip service and held together in the back with cellotape is still amazingly high. To really get into this sorts of things you would probably be having to pursue a role labeled as architect if it wasn't a market where these things were relevant. The kind of job you are looking for probably isn't being posted in a place you can find it, and I have found that recruiters are the gatekeepers not any public posting. I haven't tried cold messaging recruiters of companies I am interested in on LinkedIn but I think that's probably what I would do, you could also cold message engineers working in something you find exceptionally interesting.

Try some of the alternative sites like hired.com where it just isn't blindly submitting resumes.

Are you just interviewing poorly? Is your resume even relevant? I remember reviewing someone's resume last year that still had Windows 98 as a skill. As just a general resume trend listing every version of a thing you know is less popular than listing the types of skills you have and if they want further details be ready to provide it.

From the salary side are you just capped out for the market? There are definitely some places where 150k is the ceiling that's very hard to break without some sort of exceptional relationship with you as an individual and the employer, or an industry that just happens to command higher salaries. If you want to get into say 250k town in a 150k market you've got to be doing something differently than just being a tech lead and trying to climb the ladder.

A couple weekends to get up to speed so you can talk to the interviewer at the same level will always do better than 'I can catch up' but in the conversation it is clear you are missing the big picture. Someone who is living and breathing the problem but just needs to switch gears to actually apply themselves to it will go to the top of the stack versus someone who is like 'teach me.' So many people show up to interviews and show only passing interest in the work to be done and the conversation. Don't be that person.

xemdetia··on Why is modern web development so complicated?
I think people are assuming he wrote a pile of hot PHP garbage, but it's entirely possible he just wrote it using Symfony or Drupal and well understood PHP libs and just has no 'modern javascript' to do it, which if he did would cover all of your points. If you haven't gone back to current gen PHP in a while there are some quite solid models that are very maintainable, have security updates (via composer) and so on. It's entirely possible that he didn't do a crazy thing but we'll never know.

A decently structured PHP application is often maintained by nontechnical people with a limited understanding of programming but they can get by with just a text editor and a codebase. I have not come across any nontechnical person who could easily get a react/modern js framework pipeline going to do a small change, not to mention dealing with npm changes. I would almost feel like it would be a jerk move to leave someone without a technical department a pile of react/npm soup right now.

xemdetia··on Chrome hides www and https:// in the address bar again
I'm talking about things like HSTS where the interface to purge HSTS entries that have become invalid has changed constantly.

Some people hit these which I had to solve for them because it was pretty opaque until Google started indexing the error message properly: https://security.googleblog.com/2016/10/distrusting-wosign-a... and this one https://groups.google.com/a/chromium.org/forum/#!msg/blink-d...

There are people whose entire workflow is constantly bypassing self signed certificate/browser warnings, and the interface to undo an override is persistently changing as well. The method to get the certificate details of the site you are connecting to (which helps for self signed soup) has also been changing constantly over the last 5 years for Chrome, but for browsers like Firefox have basically been the same thing. e.g. Chrome 56 https://www.ssl2buy.com/wiki/how-to-view-ssl-certificate-det... has a totally different procedure to what you can do in Chrome 75, where it is back in the site details drop down (where it was before Chrome 56).

Really it's any case that you navigate to a site and get the Chrome error page for a TLS related reason. Many people who administer enterprise applications are not technical people and so they don't even know this sort of thing is coming. They get other people to do the technical/software updates but are generally just there to keep the system alive and get value from the system, but Chrome doesn't clearly explain to them what happened and they go to IE/Firefox and it works fine. For most people this is the limits of their troubleshooting and they have no recourse. Then on top of it the procedure or documentation that they used last time (often generated by a technical resource they may not have anymore) no longer works and they are stuck. It's a very frustrating experience for a lot of people and I wish they handled it better.

← PreviousPage 6 of 16Next →