HNHacker News
TopNewBestAskShowJobs

Communitivity

2,157 karma · joined March 26, 2011

Javascript/Rust/Erlang dev | github.com/BillBarnhill | mastodon.social/deck/@BillBarnhill | twitter.com/BillBarnhill | =Bill.Barnhill
submissionscomments
Communitivity··on Axum 0.7.0
Axum is a great Rust web framework. I am still learning it, but I was able to create a REST API with it quickly. I'm looking forward to using the new version without the generics issues, as I ran into that problem myself.

I can't use it at work yet though, the mandated policy is to not use anything that's less than 1.0.

Communitivity··on The Lack of Compensation in Open Source Software Is Unsustainable
This is a complicated problem I see pop up on HN every once in a while, in different forms. I think there is neither an easy solution, nor a simple one.

Each culture is different, but many people now see 'free' and don't think of how that product is getting created.

For Open Source the problem is even worse. As a project becomes more popular there are more demands on a maintainer's time, which is in short supply for most good senior devs. They have a demanding job, they have a wife, they have children, they have other family, they have friends, they have their own self-learning. This doesn't count the lucky ones whose employers pay them to work on Open Source software. Once a FOSS project gets to a certain adoption level it becomes a supply & demand problem where the demand quickly outstrips the supply.

How do we fix this? Well, we can either reduce the demand (PRs, issues, etc on a single project) or increase the supply (hours of dev time).

One way of reducing the demand is to have many projects that do similar small things, splitting users across the ecosystem. The NodeJS NPM system is like that. I think that leads to problems with reliability, technology selection choices, and vulnerability finding/fixing. Then again, NodeJS is still going strong.

Increasing the supply from one person is hard. For most the supply spent on personal relationships (family, friends) should not change, except to go up. That leaves the supply spent on work. This is a hard problem too. Most devs work a minimum of a 40 hour week. The only possibilities are going freelance, so you can choose your own hours if you can financially justify it (many freelancers work more than a 40 hr week though), or going part-time (which is not an option for many). Let's say a senior engineer makes $160k salary (not looking at options, etc in this math). For him to go freelance he would need to cover family health insurance and life insurance, say $2000 per month, $24k total [1]. Taxes will be around $60k [2]. These are both much more than he'd pay working for a company. To get the same spending power freelance as he did at a company, he's going to need to make about 40% more (16% for FICA taxes, 24% for insurance), or around $200k. That's not doable from donations, for any other than a select few maybe.

What about around half? He can make $100k from freelancing, $104k from Open Source donations. For Patreon the average backer pledges $6 per month [3], or $1.50 per week. You'd also need to figure out what pledger rewards were. You would need around 1800 backers to do that. As a project rises in popularity you will also have an opportunity to get a co-maintainer or two who helps oversee PRs, etc. The pledges should be split among the co-maintainers, which means more pledges needed. The co-maintainers can also start to have some of their freelancing be consulting on using the project. JBoss is a great example of that, so are a number of other projects. When you get to enough consulting on it, with 2-4 other maintainers, you might save each other costs by incorporating as an S-Corp.

Ok, so if that works, why isn't everyone doing it?

There are a number of reasons.

First, security & stability. Some people need the stability, structure, and security that comes from working in a company. Freelancing is a lot of work, across a diverse set of skills, and there are no guarantees of a next paycheck. You might make $10k one month and $1k the next (an outlier, but it happens). So you have to be very budgeted, with a nice safety net in your account for dry spells.

Next, skill set & capabilities. Some people just are not good at marketing, or working with people. I think you cannot be successful in freelancing without having some skill at marketing and at working with people. I also think you can't really be successful as a software engineer without those skills either,but that's a different topic.

Finally, risk. I touched on this in the first point above, but it's worth touching on again. Freelancing is high risk. Your work could hit a dry spell. You could get sued (you did get liability insurance right?). Some people, or their family, find it unhealthy to have to deal with that level of risk.

Are there other solutions? Probably. Better ones? Possibly. Dev collectives, bounties, FOSS organization grants, FOSS organization patronage (Google Summer of Code is an example) are all other ideas that come to mind.

As always, I am a dev - I am neither a lawyer, nor an accountant, so do not take the above as legal or financial advice.

1. https://www.ramseysolutions.com/insurance/how-much-does-heal....

2. https://www.quora.com/If-a-professional-freelancer-were-to-m...

3. https://www.crowdcrux.com/patreon-statistics-and-demographic....

Communitivity··on Amazon Lays Off 180 Employees in Its Games Division
No. We want New World to get more love, and be viable.
Communitivity··on Leaders Are Tool Builders: Why I Wrote My Own JavaScript UI Framework
Sometimes as an engineer we think of things only in terms of engineering. A tool isn't limited to a chisel, or a linter. Other types of tools include algorithms, economic theories, coping mechanisms, and strategies. When I think of a tool..ok, after I am done thinking of some PHBs I've had and some current political candidates, after that..I think of a thing that facilitates performing some activity for yourself or for others by making it some combination of easier, faster, cheaper, better performing. The 'for others' part is critical, because that is big part of leadership, in my mind.

With that in mind, was Dr. Martin Luther King a tool builder?

His area of focus that he's most known for is civil rights.

He created, and taught, strategies for non-violent protest, strategies for bringing disparate communities together so they had a louder collective voice. He crafted speeches that inspired people of all walks of life at the time, and continue to inspire 60 years later (His 'I have a dream' speech was in 1963), and I think will inspire people at least another 60 years. He treated all people equal. In his later years he spoke out against the Vietnam War. and called for a bill of rights for all Americans. The very pattern of his life is a tool, a model for young men in how to behave, how to protest, how to live.

While many, many people worked toward this goal - a great portion of the credit goes to Dr. Martin Luther King for the Civil Rights Act in 1964 and the Voting Rights Act in 1965.

I would count myself as have lived a great life as a leader if at the end I have achieved a tenth of the tool building Dr. Martin Luther King did.

Communitivity··on Joint statement of scientists and NGOs on the EU’s proposed eIDAS reform
I would say it's not speaking against the intel agencies. The intelligence community protects us from many threats (terrorists, foreign organized crime, etc.). However, they are human, and make mistakes in the name of self-preservation, zeal for their mission, and in some cases greed.

The intel agencies of different countries act as checks and balances against each other, to some degree. In some countries there are enough different intel agencies that they act as checks and balances against each other.

However, the voice of the public is a great additional check on their behavior, especially when amplified by mainstream media and social media. Our elected officials want to be re-elected. Many will change their tune if they feel there is enough outcry that it might affect their poll numbers. And this is the only legal way to effect change in many countries.

Communitivity··on Drugmakers are set to pay 23andMe to access consumer DNA
Agreed, and it's worse than not just getting your consent. They will likely make money and patents off of some of those DNA.

There are many examples out there of people doing that with cells from tissue, here is one from https://www.wipo.int/wipo_magazine/en/2006/05/article_0008.h...:

"Mr. John Moore suffered from hairy-cell leukemia. In 1976, Dr. David Golde of the University of California Medical Center, recommended that his spleen be removed in order to slow the progress of the disease. Mr. Moore signed a written consent form authorizing a splenectomy, and surgeons removed his spleen. Dr. Golde and his research assistants extracted tissue from the discarded spleen, having recognized its value for research to develop possible ant-cancer treatments. In the next three years they established a cell line from the extracted T-lymphocytes. Mr. Moore was not informed about the research work or the potential of the cell line. In 1984 Dr. Golde was granted US patent 4438032 on the cell line, which generated substantial revenue through commercial arrangements with two biotech firms."

Communitivity··on Everything wrong with tech in 2023 (in no particular order)
This is a good list, though it has some redundancy, I think it can be boiled down to a de-prioritization of ethics and a prioritization of greed. It's also not just in the tech sector. I see that in finance, entertainment (look at the struggle SAG-AFTRA has been going through), construction, and I'm sure there are others. I also bundle striving for long-term good through innovation into ethics.
Communitivity··on WordStar: Arrogant, Difficult, Powerful (2022)
My dad was a professional writer who wrote for everyone from Time Life Books to the National Enquirer. He picked up several of the early Osborne computers, with Wordstar, and used Wordstar until he passed (I also got an Osborne out of that, when I was 10). Wordstar is the first word processor I ever used, and I used it a lot (wrote my first fiction story with it). It was an amazing piece of software, for what it had to work with. I loved it, despite its quirks (such as dot formatting).
Communitivity··on No Tech for Apartheid
This is a dupe, see https://news.ycombinator.com/item?id=31601472, from 2022.

Also, whether you support Israel as defending themselves, or consider Israeli actions a form of genocide, language matters. By using the term Apartheid I interpreted this as an unconscious attempt to marginalize the efforts and sacrifices made by those who fought against Apartheid in South Africa, including Nelson Mandela and many others - in order to increase emotional response for your cause. I am sure that is not what you intended, but in communication perception is as important as intention, if not more so.

So I ask that we all keep Apartheid to mean the struggle against racism, segregation and hatred that Nelson Mandela and his people fought hard to win.

Instead, come up with a new word. For example Apartheid means 'Separation. The Arabic word for "separation" is ﻓِﺮَﺍﻕ (pronounced "firaaq"). Firaaq could be the word to uniquely mean what is happening in Palestine, as Apartheid is for South Africa. Or use a Hebrew word (Apartheid was Afrikaaner IIRC), such as Hafrada, which is the Hebrew word for "separation". It can also mean "segregation".

By using a unique word close in cultural context to the events you create something that you can attach unique meaning to, and generate support against.

Communitivity··on The Future of How We Work Together at Roblox
> Only a Sith speaks in absolutes...

I love that, and am saving it for my quote book. Attribution will I give, of course.

Communitivity··on The Future of How We Work Together at Roblox
Yes, spontaneous things can happen when in person. Many of those spontaneous things are time sucks and not productive.

Remote work has so many things going for it, it does not make sense to me to use a different model.

Commute time is eliminated, as are commuting costs. That is time better spent.

Remote communications have a built in forcing-function making us gather our thoughts before we type them in or call someone. This isn't a barrier to most. Is for some, typically the people who do a fair bit of idle chat or don't tryto solve things themselves for at least 20m before asking others.

Remote communications can be recorded. Serves as both a knowledge repository that can be gone back to, and as an audit trail for legal purposes.

Remote communications allow tools to be built into the conversation. In person we have a whiteboard, and someone has to take a photo of the whiteboard when done.

Remote communications allow collaboration with wide area geographies where in-person travel would be too costly to do frequently (e.g., England and U.S.).

Remote communications can be async, allowing staff who keep different schedules to easily collaborate.

This could be as simple as another layoff, but I think it's more management that are used to the usual way of doing things. In my experience with remote vs non-remote I have seen a clear bias of older management to be less likely to embrace remote comms. I've also seen plenty of outliers on both ends, so that hypothesis might not hold water. I am curious what the age range of Roblox management is, compared to remote-first companies like Github.

Communitivity··on Why aren't there more 80% jobs?
I'm all for an 80% week. In my career I've known six people who suffered burnout, one of whom committed suicide. Too many corporations push our IT and devs too hard, then replace them when they get used up. I don't see the U.S. companies going for an 80% week though.
Communitivity··on Why aren't there more 80% jobs?
It's even worse in defense consulting.

- I've seen people billed at 2x salary because overhead includes work area cost, management chain cost, passthrough percentage, etc.). None of that overhead is likely to be at 80%.

- Defense consulting often involves combined staffing from different companies. For example, if BigCorp partners with ThreePhdsInABox on a Small Business Innovation Research (SBIR) project, then the rules are often interpreted to mean 51% or more of the staffing has to come from the small business (usually). This is measured in terms of number of people on a project, not total cost of each person.

- For classified efforts, the cost of a clearance can run up to $50,000 per person, depending on the clearance. This is the same whether the person is 10%, 80%, or 100%. If they are already cleared at the needed level then this isn't an issue.

I don't see this happening in defense consulting until/unless the government goes to a mandatory 32 hour work week. That said many government projects have a mandatory 40 hour week, and some defense companies have an unwritten expectation of 50 hours per week, so the new unwritten will likely be a 40 hour week.

Communitivity··on Go in the Devil's Name: When Isobel Gowdie Confessed to Being a Witch
An amazing woman, and a sad story we still see repeated today. I'm reminded of the story of a Wiccan in S.C. who had some neighborhood punks shooting into her home's windows from the street. When she called the cops they asked 'You're the witch right? Uh, huh. We'll send someone when we can.", and three hours later they did.

To Isobel. Slàinte,a ghràdhachadh nan sìthichean

Communitivity··on A Journey building a fast JSON parser and full JSONPath
I haven't used XML is a long while, but there was a trick I had when I designed schemas, back when I did use XML all the time. Use an attribute if the data is a primitive String, number, or boolean. Break into multiple attributes if the data is structured but has only one level and has few children. Otherwise use an element. The three rules are simple, but produce schemas easy to read, easy to maintain, and easy to implement against. One code smell is if you start winding up with tons of attributes on one element. That may mean you should break the logical concept that element represents into multiple concepts, have those concepts be nested elements, each with its related attributes.
Communitivity··on Ask HN: Should I focus on promotions or job-hopping?
This is one of those questions that is hard to answer, such as 'Which is better Java or Python?'.

As usual, the answer it 'it depends'. More specifically, it depends on your situation.

I would suggest creating a 3 year vision, then a 3 year plan. Set targets for yourself regarding work life balance, salary, benefits, industry recognition, company recognition. Make the first cut your first thoughts, not wildly out of the park, but probably overly ambitious. Keep that draft, but then revise it to be more conservative. Aim for what would make you happy, not what would make you ecstatic. Now you have two sets of goals: objectives and thresholds. Taken together, this is a vision of where you want to be in 3 years.

Now create a plan by charting where along the road to that plan you want to be at the end of the first year. Which milestones do you expect you can hit? Which are stretch goals? Always have stretch goals, a lack of the possibility of failure means you are not trying hard enough, in many cases. Now prioritize the goals in your three year vision, and the milestones at the 1 and 2 years marks. For each milestone at the 1 year mark, write down habits you can start that will get you there. For example, I have a goal of wanting to be be good at React by the end of next year (this is a weasel-goal though, too ambiguous, but what I came up with spur of the moment). I can start a practice of studying React APIs three hours every week for a year, and putting in 5 hours every week working on an Open Source React library of components, to be released at the end of the year. These then are tangible goals. The library also helps with goals of recognition for my React skills.

At the end of each year, evaluate where you are in your plan. If you've stalled, work with your manager. If the plan doesn't seem achievable in your company after talking with your manager, then that's the time to seek another position. If there's none in the company that progresses your plan enough, then that's the time to look for a job elsewhere.

That said, always be networking. Respond personally to every recruiter, expand your linked in network as much as you can (but only with people you establish a real connection with), stay in touch with people from past projects. That way, you are always hearing of new openings. When the time is right to move it won't be a matter of finding a spot, but letting people know you're actively looking now, then choosing from a number of different positions.

Communitivity··on My personal C coding style as of late 2023
No program should every have variables names according to [a-z][1-9]+ pattern, except perhaps loop indices - and not even then.
Communitivity··on Long gone, DEC is still powering the world of computing
I remember when the department I worked in got two DEC Alphas, we were amazed and quite happy.
Communitivity··on Your WiFi Can See You
It doesn't need to be your wifi devices, it could be your neighbor's, if you're in a townhouse or your house is close enough.

But I agree with another commenter: if they've hacked your wifi router then you have bigger problems, as they've likely hacked all your devices then.

Communitivity··on Your WiFi Can See You
I wonder if this will cause an interest in in Faraday Cage walls: outer wall sheetrock with a copper wire mesh support, with a ground to prevent re-radiating. You'd also need to have the same mesh on the house roof and attic walls. Copper would be best for conductivity. The mesh holes would need to no greater than 5mm to block 2.4Ghz and 5Ghz. This is rounded down to the nearest mm from the equation:

   hole size (m) = speed (m/s) x frequency (Hz) 
   (.0599 = 299,792,458 * 5,000,000,000)
The better the conductivity of the metal the thinner the thickness can be. It's differences between 10s of microns though, so in practical terms thin copper fire should work. Even thin steel wire should work.

Your biggest leakage problem would be doors and windows. Window screens sized to stop mosquitos (1.2mm hole size) will help with this, for the windows. Metal screen doors should help.

This won't prevent all leakage, but should prevent most of it.

Communitivity··on The Tyranny of the Marginal User
Is the marginal user marginal though, in terms of marketing? Put another way, could you put a filter in place to bar marginal users and still have a commercially viable product without prices too high? I'd think the answer is yes, but perhaps the business would need to be aim toward a successful lifestyle business rather than a unicorn valuation.
Communitivity··on NASA says more science and less stigma are needed to understand UFOs
Who says UFOs are manned?
Communitivity··on WTF Happened in 1971? (2019)
Amateur opinion, but President Nixon was president in 1971, and I wonder if a lot of it is increased greed primarily due to two things. This increased greed also manifests as more short-term thinking. To paraphrase Fast and Furious, "I live my life one quarter at a time".

First, decreased consumer and investor confidence in the future after the combination of Watergate, removal from the gold standard, and the Nixon Shock policies [1].

Second, the Wharton MBA program's rise, and the Wharton view, as explained to me, that employees should be treated as renewable resources, not to some extent as family.

[1] https://en.wikipedia.org/wiki/Nixon_shock

Communitivity··on Ask HN: What programming languages are you using at $WORK?
Java and Javascript. By Javascript, I mean in the browser and NodeJS. I am trying to get approval to switch to Deno. They are willing to use Rust 'someday', but so far we aren't.
Communitivity··on Can LLMs Reason and Plan?
"Plan" means a lot of things.

There has been some research in applying GPT-4 to Hierarchical Task Networks (HTN), one means of doing computerized semi-automated/automated planning of a complex task as a tree of less and less complex tasks [1].

There are other types of planning. Automated planning works better as there are more defined the tasks in a plan, less ambiguity in dependencies, more separate between the tasks. The OP article touches on that, noting LLMs are good at extracting planning knowledge but not good in their experience at creating executable plans. This is why I think the hybrid approach is best, using an LLM to inform and tweak other planning tools in order to create an executable plan.

[1] https://github.com/DaemonIB/GPT-HTN-Planner

Communitivity··on Decongestant in Cold Medicines Found Ineffective
I had bad asthma as a child. I was more often on Actifed than not, and it was great. Comparing Sudafed and Actifed is apples and oranges, despite Sudafed supposed to be stronger. Actifed always worked for me, and worked all, but Actifed was discontinued.
Communitivity··on Elon Musk blocked Ukraine's access to Starlink after contact w Russian officials
I could see this perhaps getting him arrested, though probably not. I think it should though.

Paragraph (a) of the second clause of the Neutrality Act, 18 U.S.C. 959 [1], says that "Whoever, within the United States, enlists or enters himself, or hires or retains another to enlist or enter himself, or to go beyond the jurisdiction of the United States with intent to be enlisted or entered in the service of any foreign prince, state, colony, district, or people as a soldier or as a marine or seaman on board any vessel of war, letter of marque, or privateer, shall be fined under this title or imprisoned not more than three years, or both."

Specifically denying a single nation access to a globally provided service based on the request of a foreign power at war with that nation should be considered acting in their service.

However, this is only one of several illegal things Musk is accused of being connected to (Tesla car safety issues causing accidents, failure to pay/misleading creditors, etc.).

[1] https://www.law.cornell.edu/uscode/text/18/959

Communitivity··on A DIY ‘bionic pancreas’ is changing diabetes care
So I do not have a medical background. I have however worked a number of Industrial Control Systems (ICS) projects, and what you describe kind of sounds like a PID control loop, which also is not a simple push up/down approach.

From Wikipedia:"A proportional–integral–derivative controller (PID controller or three-term controller) is a control loop mechanism employing feedback that is widely used in industrial control systems and a variety of other applications requiring continuously modulated control. A PID controller continuously calculates an error value e(t) as the difference between a desired setpoint (SP) and a measured process variable (PV) and applies a correction based on proportional, integral, and derivative terms (denoted P, I, and D respectively), hence the name."

Getting PID control loops to work has a lot of research behind it, but it's still hard to get right with new hardware. I would imagine a PID control loop involving organics (wetware) would be much order, and harder still a PID control loop in organics with life-threatening failures possible.

Communitivity··on i am looking for Full Stack Web Development Role
Ved,

You may have better luck checking out the HN Who's Hiring thread. This month's is at https://news.ycombinator.com/item?id=36956867.

You can also checkout https://hnhiring.com/ - a collection of all the HN Who's Hiring threads.

Of course, there are also Y Combinator companies themselves, which you can find job postings for at https://news.ycombinator.com/jobs.

As a last bit of advice, you are looking for a full-stack web dev role, but I don't see a web site. I suggest creating a web site where you show off your React.js and other skills, ideally also showing off your server-side skills. Even a static site exported by Vite or Next.js would be preferable to no site.

Communitivity··on Ask HN: FOSS maintainers, what can you "sell" to sustain and earn a living?
You sell value adds. This is often in the form of consulting (see JBoss and others) but can also be in the form of commercial plugins/extensions while your fully functional core. If you go the second route though, remember that people will notice and you'll lose users as soon as you start gatekeeping commits in order to keep your commercial plugin attractive. Instead, continue to add value to your plugins through services, hosting, new features. This is a variant of the Open Core model (https://en.wikipedia.org/wiki/Open-core_model), used by Kafka and others.
← PreviousPage 3 of 25Next →