Proposal for non-nullable types in Dart - <AUTHOR> https://github.com/chalin/DEP-non-null/blob/master/doc/dep-non-null-AUTOGENERATED-DO-NOT-EDIT.md

<comment><USER2> I think that non-nullable types by default are one of Dart's biggest missed opportunities, so I'm really hoping that the Dart team ends up adopting this.

This is also a really great example of the DEP system in action. DEPs (Dart Enhancement Proposals) allow anyone to suggest improvements to the Dart platform, and work with the Dart team to determine if it can be accepted and implemented. This means that individual community members can advance the language forward and that's exactly what's happening here. The author of the proposal, Patrice Chalin, is not on the Dart team but that hasn't stopped him from creating an awesome proposal that has earned praise from Dart team members.</comment>


Why Startups Love Moleskines - <AUTHOR> http://www.newyorker.com/business/currency/why-startups-love-moleskines?mbid=social_twitter <comment><USER2> I personally can't use Moleskines. Not because of the paper or binding lacks quality, but because they _are_ so nice—I can't bring myself to "mess up" an expensive notebook with my notes. I much prefer to use regular copy paper. That way, I can freely get ideas out without worrying about messing up a relatively expensive notebook.

Once as an experiment, I bought a Moleskine, unwrapped it and promptly scribbled like mad on the first page in an attempt to get past that. Didn't work—I still felt really bad about it.

<comment><USER3> I used to get the little pocket ones that were $10 for 3 and had no trouble writing in them.

Field Notes have the same price point, but I like their paper better. (The top of a page in particular has space I can put a title that'll stand out.)

</comment></comment><comment><USER4> I agree with the point about the benefits of physicals notes, but I still don't understand what is so special about Moleskines. Maybe it was just because I was an early hire and not a founder, but I actually preferred Mead's line of Five-Star notebooks. Since I had to wear a variety of hats, from eng to hr to content creation, the subject dividers were great for keeping everything straight. They also seem to last forever.

My only wish was that they intermingled some engineering style quadrille sheets with their college rule.

<comment><USER5> Moleskines seem incredibly overrated to me. No organizational assistance, no features (that's fine) and not even high grade paper/materials.

Rhodia/Leuchtturm1917/Clairefontaine at least feel/look awesome to write on with minimal bleed.

Edit: Just saw there are like three comments already pointing all of this out... But yeah, the minimalism isn't the problem. Minimalism without quality is an odd success story though.

<comment><USER6> Quality is there. Price might be a bit inflated, but that's marketing. While I agree that there are many similar options for a book-type common notebook, I still have to find a reporter notebook that beats the overall quality of Moleskine's Reporter.

</comment></comment></comment><comment><USER7> I don't understand why the Moleskine brand has grown so popular when the paper quality is so poor relative to other manufacturers, e.g. Rhodia/Clairefontaine.

<comment><USER8> Brand marketing and good design. Moleskines look cool, Rhodia and Clairfontaine have mostly spiral bound journals, which don't look as cool. The paper might be higher quality, but I don't imagine most users actually care that much.

I've been using Moleskine for years and the paper hasn't bothered me at all. I might just be a pleb though.

<comment><USER7> Moleskine paper is notorious for feathering and bleeding when used with fountain pens, even fairly dry writers. I've actually had better luck with a no-name bound book from Office Depot than I have had with Moleskines.

<comment><USER9> +1.

My favorite notebook right now is a Rhodia No 18 dot pad. Staple bound is far superior to wire.

</comment></comment></comment></comment><comment><USER10> I prefer Rhodia: [http://jakeseliger.com/2013/01/05/product-review-rhodia- webb...](http://jakeseliger.com/2013/01/05/product-review-rhodia-webbie- webnotebook/) after this happened: [http://jakeseliger.com/2011/05/11/eight- years-of-writing-and...](http://jakeseliger.com/2011/05/11/eight-years-of- writing-and-the-first-busted-moleskine/). Nonetheless I do get the point and still prefer physical notebooks for the reasons described in the article.

</comment><comment><USER11> Moleskins arn't that great.

Only the last half of the pages are perforated. The pocket is nice but it's prone to ripping because it's just paper. And for such a simple notebook it's absurdly over priced.

I happened to find a pocket journal made for kids from Japan that cost $1.50, the paper is higher quality than moleskins, it's spiral bound, has a clear plastic pocket area with a flap that can be used as a page marker, and the cover has an dual elastic bands that can also be used as page markers or just securing the entire notebook closed. It fits neatly in my pocket. Also it has a cute anthropomorphized bear on the cover with inspirational engrish.

For larger notebooks, staples carries a line of recycled sugarcane notebooks which has excellent paper quality, comes with covers either blank or monochrome geometric designs, and only costs about $5.

</comment><comment><USER12> When I use a (Lechtrum) moleskine, I feel like I am creating an artisan product that is an extension of my thoughts- something to be kept as a remnant of my mind.

I fill up the table of contents section with close attention. The page numbers remind me of my progress more clearly. Filling in the date section is a simple feature that reminds me how long it has been since I last used the respective notebook, as I have graph paper moleskines and lined paper moleskines.

These simple features make my notes feel more important, and as a result I take much greater care with the clarity and explanation of my notes. Personally, after having spent about a year using moleskines, my productivity and enjoyment with taking notes has increased significantly.

<comment><USER13> Blimey, I am genuinely unsure if this is a parody comment or not.

<comment><USER12> It's not a parody comment. I am a big fan of writing, and products that make my writing feel more valuable make me care more about what I am writing. It's as simple as that.

</comment></comment></comment><comment><USER14> I've been exposed to asian style lined notebooks while in Japan and can't go back. I use the Kokuyo or Mauruman loose-leaf paper in a binder and it has little marks on the rules to help you line up your characters. Of course for me this makes perfect writing/graphing paper, since the regular marks stand in for a grid in a pinch. Also the paper quality is much smoother then mead/staples whatever. Some may like that, some may not. I do.

</comment><comment><USER15> they do?</comment>


The Truth About "Dramatic Action" - <AUTHOR> http://chinamediaproject.org/2020/01/27/dramatic-actions/ <comment><USER2> Already gone? here is the archived link: [https://web.archive.org/web/20200128085806/http://chinamedia...](https://web.archive.org/web/20200128085806/http://chinamediaproject.org/2020/01/27/dramatic- actions/)

<comment><USER3> It seems to be back. Never attribute to malice what can adequately be explained by an unexpected surge in traffic?

</comment></comment><comment><USER4> I assume this post will vanish shortly to "protect stability".

<comment><USER5> It seems to already be gone. Even if the measures taken to keep the lid on the story are not too unexpected, it still is shocking how irresponsible and shortsighted and short-term focused politics (in this case in China, in lots of other cases everywhere over the world) react to arising problems.</comment></comment>


United Airlines made passenger abandon mobility device at gate before honeymoon - <AUTHOR> https://medium.com/@treyharris/united-airlines-made-me-abandon-my-mobility-device-at-the-gate-before-my-honeymoon-8d74eee04038 <comment><USER2> Given how well United handles anything (or Republic for that matter) soon you will be required to beg for mercy before boarding. Why would anyone in their right mind fly United any more? An airline with no clue about customer service whatsoever, nor for that matter even following their own procedures. If the TSA and your own airline department in charge of such things says its OK you really don't have a leg to stand on when you get sued. Much less the court of public opinion.

<comment><USER3> > Why would anyone in their right mind fly United any more?

If they're like me and they don't live in a major metropolitan area, oftentimes the choice of airlines is limited and one airline might consistently be a lot cheaper than the other choices you might have depending on the airline network and required flight connections.

That's why when I see things like this happen I view it as obviously bad PR for United but it seems like consumers don't have much choice in many scenarios unless they want to pay substantially more per ticket.

<comment><USER4> The price just isn't on the ticket.

</comment></comment></comment><comment><USER5> So, at this point what does it take? Before you fly, do you need to go to a federal court and get an order to be allowed to board and take your flight, and bring a couple US Marshals to the gate with you for enforcement? Would air crew still insist that they possess an absolute authority taking precedence over it? Could the pilot be arrested and dragged off for contempt?

When people defend airline crew making up policies on the spur of the moment with "well, you have to comply, nothing bad happens until you don't comply", do they _think_ about the extremes they're going to push people to sooner or later? Or does this kind of stuff just not enter their minds?

<comment><USER6> they have adopted a fully authoritarian mentality because they have been given arbitrary authority with zero accountability. this is the Stanfrod Prison Experiment except in real life and in a crucial service industry. we're fucked.

<comment><USER7> The US airline industry seems remarkably similar to the US ISP industry.

In both cases there is no real competition, and new competitors are legally prevented from entering the market.

As a result the US are terrible in both categories by international standards.

<comment><USER6> there's a big difference between "terrible business" (as the ISPs are) and "creeping towards totalitarianism" (as the airlines are). I wouldn't use this as a case for market deregulation or whatever it is you imagine might improve things. This is really fundamentally a cultural issue and not an economic one.

The problem isn't that United Airlines has insufficient competition (probably true). The problem is that United staff and airport security staff are given inappropriate amounts of power with no checks and balances when things get out of hand and that our society has become so deranged and paranoiac that we let them get away with it.

</comment></comment></comment></comment><comment><USER8> I suspect this violates one or another aspect of the ADA. Especially as the OP followed the carrier's and the TSA's instructions and was given (verbal, but apparently authoritative) approval in advance.

If we had an Administration actually interested in these things: A first step would be to _require_ the carrier to transmit written, authoritatively-signed approval in advance for all such accommodations granted. Yes, this will cost them something. At this point, let them eat that cost. If it were possible, I'd require them to create a separate accounting bucket for such expenses that can only be charged against gross profit and, to the best extent possible, cannot be charged back to ticket prices and therefore other customers' fares.

If their institution is so fucked up that they cannot properly and accurately accommodate legally-mandated behavior, then they should pay for this -- out of their own pocket, not the customers'.

This is a case where "hit them in the pocket" is quite appropriate. And, maybe it will have to come out of customers' pockets, ultimately. I see it as akin to Walmart, where the workforce is only sustainable because of substantial government program payouts -- tax dollars -- that subsidize it.

If United, et al.'s making money requires this level of disfunctional organization, then they need to find a better business model.

</comment><comment><USER9> > We don't even allow Samsung phones, we definitely won't allow that.

This is pure gibberish to me: what does a policy on Samsung phones have anything at all to do with Segways?

<comment><USER10> The battery. Federal regulations prohibit open, unsealed batteries in passenger flights. Plus some Samsung phones have an, ahem, bad habit of blowing up.

<comment><USER11> Seems ridiculous, though, to use Samsung phones as an excuse to specifically ban Segways, but the not do the same for every other piece of consumer electronics that contains a rechargeable lithium battery.

I think what was really going on there was a combination of confirmation bias and groupthink - everyone settled on a convenient, if specious, excuse, and at that point none of the United staff really cared if it made any sense, because they didn't want to have to stop and think about wtf they were doing.

</comment></comment></comment><comment><USER12> Is it just me or does those post read like an advertisement for the cruise and the segway-like device?

For someone complaining, the post goes on and on into the minutiae of features!! Suspicious

<comment><USER13> They needed to describe the features of the device to explain why it was important they be able to keep _that particular device_ with them - that they were being deprived of something more critical than the mere inconvenience of "just rent a substitute vehicle".

I was on the Jococruise so I can confirm that both port stops were tendered - I imagine what a pain it would be to get a standard motorized cart on and off the tender boats - they don't seem designed to handle that use case at all well.

</comment></comment><comment><USER14> OP from Medium should sue airline pilot for ADA Violations.

OP from Medium should name and shame the fools that caused this problem.

<comment><USER5> Due to some historical quirks, the ADA doesn't actually apply to airlines the way you're expecting it to. There _is_ federal law which applies, it's just not the ADA.

The basic history here is:

* In 1973 Congress passed the Rehabilitation Act. This is an ADA-like law which applies to federal agencies, contractors and some entities which receive federal funding.

* In 1986, the Supreme Court ruled that the manner in which airlines benefit from federal funding is too indirect to cause them to be covered under the Rehabilitation Act.

* In response, Congress passed the Air Carrier Access Act, which applied Rehabilitation-Act-type standards to airlines.

* Later on in 1990, Congress passed the Americans with Disabilities Act, which went further in which types of entities it applied to.

The result is that for something that happens to you at an airport, you need someone familiar with the above laws to figure out which one applies to the particular people or entities who caused your problem. If it's the TSA or the airport itself, you use the Rehabilitation Act; if it's the airline, it's the Air Carrier Access Act; if it's someone else you probably use the ADA.

This is why, for example, this guy is working to slowly crack open the TSA using the Rehabilitation Act instead of the ADA, since the ADA isn't the law that applies to the TSA:

[https://s.ai/tsa/legal/rehab_act/](https://s.ai/tsa/legal/rehab_act/)

</comment></comment><comment><USER15> The ghost of continental strikes again

</comment><comment><USER16> I have to say, a company has to try really hard to somehow come out worse than the TSA in a customer dissatisfaction story.

The customer does research online and contacts both United and the TSA to get pre-approval of bringing the device onboard.

At the airport, the TSA allowed it through their checkpoint. But he gets stopped at the gate because his itinerary actually reads: "passenger was advised he would NOT be allowed to board with device, and the device will not have to be checked, provided he can place device in overhead without crew assistance. Transferred passenger to TSA for clearance of device through security." As the author noted, one could read the itinerary note and work through the logic to recognize that it was likely a typo.

Now, I can understand the gate agent being somewhat skeptical. After all, he deals with dozens of cases each day and doesn't have all the context of every situation so he probably falls back on past decisions to deny approval. So the author gets United's Special Needs Services on the phone to reaffirm that the device was fine and that he should be let on. The gate agent delegates to the manager. Again, without full context, the manager simply assumes the item can't be brought on despite what was mentioned by Special Needs Services.

So in hopes of getting the answer he wanted, the manager contacts the TSA, and the TSA representative says device is perfectly fine. At this point, anyone could think to themselves, "okay those are two authorities who give the green light. I think that's perfectly fine."

But no! The manager then elevates it to the authority of the pilot, who acts all polite in person but then eventually communicates that he won't allow the device onboard. Manager gets the verdict he desires and the author is screwed.

First of, I would imagine that a special needs representative is far more adept at know which electronic devices would be safe onboard a vehicle than a pilot who is probably unlikely to know about every single new assistive device out there. But even if that were not 100% true, I think getting approval from the first two sources should've been good enough.

Secondly, life is already really hard for those with physical disabilities. Especially when traveling, where there's a lot of stress on top of the unpredictabilities of the environment. So to be humiliated and endure additional physical pain for spurious reasons is quite inhumane, even for an airline.

Third, before the topic gets onto the economics of airlines (as it always gets to when it comes to customer experiences), I'd like to underline that the manager literally had to go out of his way to find a reason to deny the special needs of this individual. This isn't a case where the manager had to make a quick decision and had go with previous experiences, this is a person who disregarded explicit approvals from other agencies in order to validate their own belief.

</comment><comment><USER17> I think he was discriminated against because he was gay.

<comment><USER14> Why do you think this is so?</comment></comment>


Reiser Prosecution Jolt: Victim's Ex-Lover Confesses to Eight Killings - <AUTHOR> http://www.wired.com/politics/law/news/2007/05/reiser <comment><USER2> Dude, that article is nearly a year old...</comment>


Good People Work Hard - <AUTHOR> http://coliveira.net/software/good-people-work-hard/ <comment><USER2> Not to be a total prick, but it's entirely possible Knuth started work on that paper weeks before and just did the final paragraph that night or morning.

</comment><comment><USER3> The interview linked is also excellent, and very interesting to read.</comment>


GitHub Container Registry - <AUTHOR> https://github.blog/2020-09-01-introducing-github-container-registry/ <comment><USER2> Seems extremely expensive, especially the data transfer part. Just a quick calculation at $0.50/GB we would end up spending $10,000s in just data transfer costs vs $0 with AWS ECR (transfer within region is free).

Guess this would work out okay for storing some development images but definitely does not seem feasible for production use.

Unless I'm missing something? There's some fine print about it being free within the context of a github action, but this doesn't really seem clear. Does my fleet of ec2 instances pulling down the image after a new deployment count as within an "action"?

<comment><USER3> Data transfer between GHCR and Actions is free. We're building out a much tighter integration between your source code and the artifacts created. The effects of this will create a stronger supply chain link and work toward better reproducibility.

We recommend using GHCR for the development and test workflows and then publishing to the "Cloud *CRs" for your production images such that they can be pulled directly from there.

<comment><USER4> Why do you recommend?

Because that's how you get paid or is there actually a value add here I'm not seeing?

"Tighter integration" and stronger vendor lockin isn't actually a selling point for anyone but the seller.

I'm not sure I buy the "better reproducibility" line either, whats better here?

<comment><USER5> Well, if nothing else, it means you'll have extremely quick connectivity between your GitHub Action Runner and the registry :)

As mentioned, this is best (for now) as a dev/test tool, rather than a general container registry.

Disclosure: I work at Azure.

<comment><USER4> Ok, and that justifies the cost somehow?

Disclosure: that was obvious :)

No hard feelings, just pointing out the community needs more than corp speak to be convinced, especially when Microsoft is telling you "its just better ok"

<comment><USER6> I think you're wrong about tighter integration not being a selling point. Integration makes things more accessible to a wider audience and can increase productivity when done well too because it will make moving data through a system broadly more reliable.

<comment><USER4> Thats fair, if you want tight integration with azure and GitHub, I can see how that would be a good thing.

The problem is, tighter coupling still comes with costs that some people aren't willing to pay.

<comment><USER6> Yep. Agreed on all points.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER7> Reminder that GitLab has _free_ private images still, capped @ 10GB (as others have mentioned). It's interesting that from a strategy point of view GitHub thought capped free private images wasn't worth pursuing, despite the obviously large stores of cash that MS has.

</comment><comment><USER8> Nice to see the registry is free for public images, but does anyone know where I can see pricing for private images? Is it still the same as the packages pricing[1], because 2 gigs seems _incredibly_ low storage space when it comes to Docker images, right?

To me, the price to beat is the $0.04-$0.20 a month I pay for Google Container Registry (price depending on whether I remember to go back and delete older images or not). I'm guessing it's not going to get to that level of commodity priced, but I don't see this product being competitive without giving a heck of a lot more space for cheaper.

[1] [https://github.com/features/packages#pricing](https://github.com/features/packages#pricing)

<comment><USER9> > Nice to see the registry is free for public images, but does anyone know > where I can see pricing for private images?

This might be a good time to remind that GitLab offers free container registries for all projects for a few years now.

<comment><USER8> Good callout. The GitLab.com registry has a "soft cap" of 10 GB, which seems like plenty of room for most projects, as long as you don't require a long history.

<comment><USER10> Thanks for mentioning us, if someone if looking for the docs they are on [https://docs.gitlab.com/ee/user/packages/container_registry/](https://docs.gitlab.com/ee/user/packages/container_registry/)

<comment><USER11> I use it with gitlab auto devops and the whole experience with my k8s cluster on DO is super nice. I very much recommend trying out gitlab.

</comment></comment></comment></comment></comment><comment><USER12> There must be some fun intracorporate debates discussing how this is positioned relative to the Azure Container Registry, also offered by a division of Microsoft.

[https://azure.microsoft.com/en-us/services/container- registr...](https://azure.microsoft.com/en-us/services/container-registry/)

<comment><USER13> Brand is a fine difference. Some people are not going to buy the Microsoft container thing. Other people would only buy the Microsoft container thing. I think that's part of the reason MS wanted to own github!

<comment><USER14> They don't hate GitHub even though it's owened by MS.

</comment></comment></comment><comment><USER15> What does everyone think about the trend of using .io for registries? I've always considered gTLDs to be safer than ccTLDs.

Given the choice of something like llll.dev or llll.io for a private registry, would one be preferable?

<comment><USER16> draw.io switched away from io because of security concerns: [https://www.diagrams.net/blog/move-diagrams- net](https://www.diagrams.net/blog/move-diagrams-net)

</comment></comment><comment><USER17> It's not immediately clear from their documentation, but do they enforce a naming scheme on images pushed to the registry?

This is an annoyance with the GitLab Container Registry, which mandates that the repository part of the image name be 3 components or less, one of which must be the GitLab project name. So your images have to be named like namespace/project/something:tag, which may not be what you want.

<comment><USER18> Hey there! Engineer on the GitHub Container Registry here.

Our only namespacing enforcement is that packages must be published under a user or organization namespace for which you have write permissions. For example, I'd be able to publish under `ghcr.io/taywrobel/redis`, or under `ghcr.io/github/redis`, but would be disallowed from publishing as `ghcr.io/saxonww/redis`.

Other than that restriction, you can have nested image namespaces with arbitrarily many segments; i.e. `ghcr.io/taywrobel/dev/redis` would be valid.

<comment><USER17> Having arbitrarily many segments is an improvement. In particular, we have some tooling that depends on a calculated image name, and we have to pre-pull and rename images locally if we store those in GitLab's registry.

I think for an Enterprise customer being able to push images that don't match the user/org pattern would be good too. While you couldn't allow just anyone to push e.g. 'ghcr.io/docker/docker:stable', I think this is a valid want for an internal/self-managed registry.

</comment></comment></comment><comment><USER19> I wonder how long this has been brewing and waiting for the right moment. It's hard to not contrast this with Docker's recent changes to their container registry [0] (discussion [1]).

[0] [https://www.docker.com/pricing/resource-consumption- updates](https://www.docker.com/pricing/resource-consumption-updates)

[1] [https://news.ycombinator.com/item?id=24143588](https://news.ycombinator.com/item?id=24143588)

</comment><comment><USER20> I've been in the private beta for a couple weeks, and the service is looking great. My issue was that `containterd` couldn't pull from GitHub Packages' due to some OCI vs. Docker differences. The new incarnation fixes this :)

</comment><comment><USER21> This should give dockerhub a run for their money. I recently received an email from Docker saying my free access to their repository is now rate limited, which would include public open source images

</comment><comment><USER22> There was a bit of a show-stopper in GitHub's registry when used with containerd, but that appears to have been fixed now: [https://github.com/containerd/containerd/issues/3291](https://github.com/containerd/containerd/issues/3291)

<comment><USER18> The new container registry should be OCI compliant, and so should work with any OCI compatible tooling, including docker, containerd, ORAS, and hopefully more tools yet to be come.

If you hit any compatibility issues, especially any with regards to the OCI spec, please let us know!

</comment></comment><comment><USER23> Is this another GitHub thing with only user-scoped access tokens rather than project scoped? I really don't like that and I'm surprised people are seemingly fine with it.

<comment><USER24> Service accounts are a valid security pattern - what does it mean, project scoped?

<comment><USER23> I mean, let me limit a token's access to only a certain repository or subset of images or whatever the service is, rather than anything in my account.

Separate accounts are a massive pain to manage by comparison.

</comment></comment></comment><comment><USER25> You can use Skopeo[1] to easily migrate your images from one registry to another. Here it is from Package Registry to Container Registry.

A personal access token with `write:packages` and `read:packages` scopes is enough.

      skopeo copy \
          --src-creds <USER>:<ACCESS_TOKEN> \
          --dest-creds <USER>:<ACCESS_TOKEN> \
          docker://docker.pkg.github.com/<USER>/<REPO>/<IMG>:<VER> \
          docker://ghcr.io/<USER>/<IMG>:<VER>

[1] [https://github.com/containers/skopeo](https://github.com/containers/skopeo)

</comment><comment><USER26> Is there a way for you to authenticate WITHOUT using a PAT? It appears that this only works if you create a PAT and use your user as the login.

I would have hoped that the GitHub Action token could login given that the permissions for a GHA token already have the ability to read/write to packages: [https://docs.github.com/en/actions/configuring-and- managing-...](https://docs.github.com/en/actions/configuring-and-managing- workflows/authenticating-with-the-github_token#permissions-for-the- github_token)

If I use an app token that's derived from a GitHub App installation, what user name do I use?

<comment> tr-gitlab With the GitLab Container Registry you can authenticate using your PAT, Job token or a Deploy token.

[https://docs.gitlab.com/ee/user/packages/container_registry/...](https://docs.gitlab.com/ee/user/packages/container_registry/#authenticating- to-the-gitlab-container-registry)

</comment></comment><comment><USER27> So will pulling images via github actions from Github Container Registry within an organization count towards data transfer costs?

Today we are pulling from one repo's packages to another repo via a token when dealing with shared base images. Clunky, but also counts as a data transfer charge I believe. (maybe not if using a github token)

I'm not sure the account billing page clears things up for me:

[https://docs.github.com/en/github/setting-up-and-managing- bi...](https://docs.github.com/en/github/setting-up-and-managing-billing-and- payments-on-github/about-billing-for-github-packages)

<comment><USER28> > All data transferred out, when triggered by GitHub Actions, and data > transferred in from any source is free. We determine you are downloading > packages using GitHub Actions when you log in to GitHub Packages using a > GITHUB_TOKEN.

Should be free I think?

</comment></comment><comment><USER29> Hope this works, but our experience with the GitHub registry was awful so far. We've spent >10h trying to get GitHub Nuget registry to work without success. We're still using Gemfury. You'd expect that GitHub, Microsoft and .NET should play nice, but no.

<comment><USER3> Apologies for that. :(

I hope you'll give this a try. GHCR is based off an all new code stack. You'll notice that now you need to associate Containers and the repositories they come from instead of publishing "into repositories". Our new model has packages / containers published into orgs which will make other services simpler as elevate them as well.

<comment><USER29> We're periodically retrying things.. (had 3 attempts with NuGet). So does this include a redo of / incorporates the package registry? It would make sense to treat them uniformly.

</comment></comment></comment><comment><USER22> Does this mean that vendors, or the creators of images pay for their users downloading them?

I.e. if I release a popular image, and it's pulled constantly, I'll end up paying for that popularity in my GitHub bill?

Pro - Data transfer out outside of Actions - 10GB limit, then $0.50 per GB

[https://github.com/features/packages#pricing](https://github.com/features/packages#pricing)

<comment><USER18> During the beta there will be no charges for GHCR usage.

After we go GA, we'll be charging for storage and data transfer on private images only, the same the current registry offerings. If your popular image is public, you'll incur no bandwidth charges, regardless of how often it's pulled.

<comment><USER22> Thank you. So "free" does mean free for public images.

</comment></comment></comment><comment><USER30> Been playing around with this for the past hour. Pushed a couple images. But I can't seem to delete them. Under "Edit packages", there are only the options to "View all versions" and "Edit description". But nothing to manage or delete packages.

Anyone successfully deleted a container image?

</comment><comment><USER31> Can someone help me read more better? I don't see how to actually sign up for the public beta of this in the article. Am I missing something?

Edit: Okay, so it appears you just have to push it with a GitHub Action. I'll give that a try.

<comment><USER18> There shouldn't be any signing up needed, as it's an open beta.

You should already see `Container` listed as a package type in the UI, and can begin publishing packages by creating a personal access token with `read:packages` and `write:packages` scopes as appropriate - [https://docs.github.com/en/github/authenticating-to- github/c...](https://docs.github.com/en/github/authenticating-to- github/creating-a-personal-access-token)

</comment></comment><comment><USER32> I see some replies from GH employees. Do you intend to support /v1/search or /v2/_catalog APIs? Would be nice to have access to at least public image listing like Docker Hub's.

<comment><USER18> Yup, we intend to support them, or at least the v2 catalog API. Given the current state and forward progression of most tooling, as well as the compatibility of docker v2 with OCI v1, there didn't seem to be much value in implementing the legacy Docker APIs.

The catalog functionality is just more complex given the granularity of our permission model (configurable down to the package level), so it unfortunately didn't make the cut for the beta feature list.

</comment></comment><comment><USER33> I don't get the GitHub Container Registry, GitHub Package repository, or GitHub Actions. The only good thing about these products seems to be integration with GitHub. But in many ways they are inferior to other CI and artifact hosting options. The biggest problem is the latency will be significant outside of your own network. The other big issue is security. That's fine, they are new products... except they don't seem to be moving in a direction that would fix these problems. I think maybe a lot of programmers don't realize what they're missing, they're just using them because they're from GitHub.

<comment><USER5> More often than not, people want build artifacts in the same security profile / performance profile as their CI/CD pipelines. Think of this more as services to support your GitHub Action workflows - where inter-service bandwidth is free and highly performant.

Disclosure: I work at Azure.

</comment></comment><comment><USER34> This will make my life easier, thanks. Being able to delegate publication to projects instead of setting up yet another silo is great!

</comment><comment><USER35> I called this a month ago. there is no reason why microsoft (github) would pass up an opportunity to create their own registry.

</comment><comment><USER36> Good bye docker hub.

</comment><comment><USER37> RIP Dockerhub

<comment><USER38> Or the new competition will force Docker Inc to invest in Dockerhub features again.

Including the free tier, if they want to keep their "world's largest library and community for container images" status. But free tiers cost money.

With RedHat going after Docker itself with their daemonless version of Docker, podman, and docker-ce's lack of cgroupsv2 support, Docker Enterprise having to compete with K8S, and there being multiple entrenched container registry companies (eg Quay) it must be tough at Docker Inc.

<comment><USER39> > _With RedHat going after Docker itself with their daemonless version of > Docker, podman_

Nobody cares about Podman except Red Hat and their most loyal fans. I'd be surprised if podman has managed to steal more than 1% of Docker's install base.

> _docker-ce 's lack of cgroupsv2 support_

containerd supports cgroupsv2. Docker CE is based on containerd. If the current release doesn't have it, the next release will.

> _Docker Enterprise having to compete with K8S_

Docker Enterprise includes a K8S distribution. Does it compete with itself?

> _multiple entrenched container registry companies (eg Quay)_

Quay is not a company. It is a CoreOS (now Red Hat) product.

> _it must be tough at Docker Inc._

I believe that's true. Just not for any of the reasons you have given.

<comment><USER40> > Nobody cares about Podman except Red Hat and their most loyal fans. I'd be > surprised if podman has managed to steal more than 1% of Docker's install > base.

This seems dismissive. Podman has many neat features that docker doesn't (pods) or were added later (rootless containers).

[https://developers.redhat.com/blog/2019/01/29/podman- kuberne...](https://developers.redhat.com/blog/2019/01/29/podman-kubernetes- yaml/)

[https://developers.redhat.com/blog/2019/01/15/podman- managin...](https://developers.redhat.com/blog/2019/01/15/podman-managing- containers-pods)

Obviously, you can use kompose and docker-compose but I would argue podman has better experience.

<comment><USER39> I'm not dismissing how good it is, just how popular it is. Definitely not popular enough to threaten Docker's adoption, not even close. Docker does have problems, but Podman is not one of them.

</comment></comment></comment></comment></comment><comment><USER41> Since MSFT bought GitHub, the site has launched a bunch of confusing products. I lost track what all these things do now.

What are GH Packages?</comment>


The time is ripe for a rip by netbook PC - <AUTHOR> http://www.sfgate.com/cgi-bin/article.cgi?f=/c/a/2008/11/29/BU3E14BCHU.DTL <comment><AUTHOR> _"With more services offered through the Internet "cloud," a growing number of consumers are content to just browse, use social networking sites, e-mail and consume their favorite media on their laptop"_

<comment><USER2> Through a poxy little screen. That's still the biggest turn-off for me.

<comment><USER3> There have been small high-quality screens available for some time -- the Fujitsu P-series laptops had extremely nice 10.2" 1280x768 screens (I had a P2120).

At least the netbook vendors stopped trying to use $8 DVD Player screens (7" 800x480), and moved to 9" & 10" 1024x600 screens. There are a few netbooks out with 1280x800 screens.

My biggest problem is the shitty style of keyboards that are so popular in east asia -- my Fujitsu had one, the EEE keyboards are a perfect example: Irregular keyshapes, odd staggering, arrow keys that displace the right-shift, too-big/no F-keys, shitty keyfeel, flexy support, etc.

The only netbooks I've seen with good keyboards have been the Acer/HP models, though they have the odd touchpads.

<comment><USER4> My problem is that they're largely inferior to a small regular laptop, yet cost more.

It's like getting a MacBook vs Air. I'm sorry, the Air is nice and is exactly what I need it for, but for $1000 fucking dollars I'll take the extra 2 lbs of weight. I mean jesus christ, the appeal is for people traveling and overweight charges on airlines aren't _that_ expensive.

<comment><USER5> I like to view netbooks as a supplement to my iPhone and MacBook rather than as a replacement.

Sometimes the iPhone doesn't cut it (coding and typing lots in general, and this isn't a virtual keyboard thing it's a smartphone thumbboard thing and generally keyboards for mobile phones aren't terribly great either) and the MacBook isn't something I can stuff in my purse in the morning and not worry about the additional weight and possible theft and things like that. I'll just take the iPhone alone when I _need_ to, I'll take the MacBook when I _need_ to, but for the average case a netbook will work for what I want to do on-the- go in a very small and light form factor.

I know they're inferior to a small regular laptop..but if I wanted a "small" regular laptop I'd take the MacBook. The netbooks on the market now are half the cost of the MacBook. Under no circumstances do I really want an Air since it's too thin, way expensive and underpowered for my needs vs. the cost. et cetera.</comment></comment></comment></comment></comment>


Introducing free Skype Meetings - <AUTHOR> https://blogs.office.com/2016/07/05/introducing-free-skype-meetings/ <comment><USER2> As stated... This is only useful for businesses using office 360.

Getting your friends to use skype is as easy getting them to switch to windows phone. I used to have skype to speak with friends abroad, but most have switched to Whatsapp... I now use whatsapp.

<comment><USER3> In my experience most people tend to at least have it installed. But yeah, Hangouts has much better quality (especially screen sharing is night and day) and a much lower barrier to entry (no business email requirement, no client to install if your browser supports WebRTC, no region restriction, higher client limit).

<comment><USER4> > no region restriction

Hangouts doesn't work in China, undeniably a major if not the major online market. Skype does.

<comment><USER3> Fair enough then, _less_ region restriction, since this thing only works in the US.

</comment></comment></comment></comment><comment><USER3> How about fixing the clients you already have before introducing new (paid!) ones?

</comment><comment><USER5> Apparently as an Office 365 user my experience is already "richer". I can't imagine how awful this could possibly be that my experience should be better.

I mostly resort to using Google Hangouts internally which is more reliable, easier and actually works in Linux. And is free.

<comment><USER6> This seems to be a web-based mini-client of Skype for Business now available for non-Office 365 teams. They say it has more restrictions that Office 365 users of Skype for Business: Primarily conferences are limited to 10 people in a conference in the first 60 days of a (non-Office 365) team using it and 3 people after that.

This seems to be an attempt to upsell teams currently using Google Hangouts to try Office 365.

It may also be a slipstream announcement that the web-based client for Skype for Business has gotten better? I can't tell based on just the blog post. Something to investigate maybe.

</comment></comment><comment><USER7> What is the state of Skype on Chrome OS?

</comment><comment><USER8> Not available in Canada, yet.

</comment><comment><USER9> I started using linphone as an alternative to skype.</comment>


Ask HN Startups: Which web language/framework are you using? - <AUTHOR>

I don't know how to make a poll. If someone could edit this to add one, that'd be nice. <comment><USER2> <http://news.ycombinator.com/item?id=1843083>

</comment><comment><USER3> Zend Framework for PHP also CodeIgnighter

</comment><comment><USER4> Mainly Groovy on Grails, with some plain old fashioned Java here and there. Will probably be exploring some possible usage of Clojure or Scala in the near future.

</comment><comment><USER5> Javascript and Node.js

</comment><comment><USER6> Wordpress - for content management stuffs

CodeIgniter - web app development

Javascript, jQuery for interactivity and AJAX

</comment><comment><USER7> Plain old PHP, MySQL, Javascript and AJAX.

</comment><comment><USER8> Mainly CodeIgniter for PHP and some Node.

</comment><comment><USER9> Python, Django and GAE.

</comment><comment><USER10> Depending on the site, Ruby, Drupal or WordPress.

</comment><comment><USER11> Python, Flask, Javascript (including Node.js)

</comment><comment><USER12> Ruby on Rails

</comment><comment><USER13> hmm i think you should try google trends to see which is the most best language for web development that is trending.

<comment><USER9> Not really. If you're doing something nobody else does, maybe the best tool for it is something nobody else uses.</comment></comment>


PySyncObj: A library for replicating your python class between multiple servers - <AUTHOR> https://github.com/bakwc/PySyncObj <comment><AUTHOR> A library for replicating your python class between multiple servers, based on raft protocol</comment>


Show HN: A Sierpinski Valentine in 4 equations - <AUTHOR> https://www.desmos.com/calculator/9ed6k6wexp

<comment><USER2> You can send this graph as a valentine, or make your own at [http://mathogram.desmos.com/](http://mathogram.desmos.com/)

Disclosure: I'm one of the engineers at Desmos.

</comment><comment><USER3> This is very cool - both Desmos itself and the Sierpinkski Valentine example! In case you're more familar with LaTeX, you can also create similar visualizations in LaTeX using the 'lindenmayersystems' libary and TikZ. Here's a quick example: [https://www.overleaf.com/latex/examples/the-first-six- levels...](https://www.overleaf.com/latex/examples/the-first-six-levels-of- the-sierpinski-triangle/gqwmqrhmphxv)

</comment><comment><USER4> Unsupported browser.

Desmos works best on your version of Android if you use the Chrome Browser.

(Close page in Aurora, no clue what "Desmos" is but I don't care by now)

</comment><comment><USER5> How the heck do people come up with these equations? Is it purely mathematical knowledge, knowing what functions look like when plotted?

<comment><USER6> I think it's a combination of playing around and math chops.

Without any mathematical knowledge, you probably couldn't come up with something like the s(i,k,o) function (which, as far as I can tell from just looking/playing around with them briefly, seems to be the function responsible for the tessellation offset), and you might not have thought to define a system like (x=X(N,t), y=Y(N,t), 0<t<1).

Without a nontrivial amount of playing around, you probably wouldn't have found the exact constants used, like (2 _pi_ (3^i)), .2/(2^i), etc.--but knowing how altering those affects the end result takes some mathematical knowledge, so it's more guided investigation than random guessing.

<comment><AUTHOR> Yeah - I think it'd take some serious chops to construct this from scratch (note: it wasn't me! author: twitter.com/teachwithcode). But I've been having a blast deconstructing the equations.

Here's a fun intermediate step (circles instead of hearts), with a few of the numbers parametrized as sliders:

[https://www.desmos.com/calculator/irg4qa2s4h](https://www.desmos.com/calculator/irg4qa2s4h)

[disclaimer: I work at desmos]

</comment></comment></comment><comment><USER7> can i extract an svg of this? that would let me CNC it.

</comment><comment><USER8> Very cool!</comment>


Unfork() - <AUTHOR> https://github.com/whitequark/unfork/blob/master/README.md <comment><USER2> > Permission to read from or write to another process is governed by a ptrace > access mode PTRACE_MODE_ATTACH_REALCREDS check

I presume that is necessary for this in addition to belonging to the same UID?

> As far as I know process_vm_readv isn't even detectable if the agent process > is more privileged than the examinee process—so you're free to manipulate > your private copy of the application in the comfort of your own address > space.

Interesting. This would be really useful in debugging. Many issues don't reproduce except for in specific configurations. Having access to the memory dump of the live process "streamed" to the debugger would be great!

<comment><USER3> > Having access to the memory dump of the live process "streamed" to the > debugger would be great!

This is also possible with standard debuggers, such as GDB: It can attach to a running process and not only examine the memory, but also debug (stop, pause, skip, ...) the stack trace and control flow. Usage is as simple as _gdb -p $(pidof my_running_program)_

<comment><USER4> You might also find [https://rr-project.org/](https://rr-project.org/) interesting -- it lets you step backwards too.

<comment><USER5> Interesting. Without letting storage explode, I can't think of an easy way to do this since computation isn't really reversible.

<comment><USER6> You can keep track of the before and after states whenever you do something nonreversible, like a syscall.

<comment><USER7> And even then you can probably just store the diff instead of a full image. And even then if you run out of memory you can just start evicting the oldest snapshots.

</comment></comment></comment></comment></comment></comment><comment><USER8> I know Windows doesn't get too much love here. But we have to admit that Win32 has already this kind of feature since ages: Process access routines such as OpenProcess() [1] coupled with ReadProcessMemory() [2] will do the job in a clean way.

Taking a snapshot of other processes is also a basic use case of this family of functions [3].

[1] [https://docs.microsoft.com/en- us/windows/win32/api/processth...](https://docs.microsoft.com/en- us/windows/win32/api/processthreadsapi/nf-processthreadsapi-openprocess)

[2] [https://docs.microsoft.com/en- us/windows/win32/api/memoryapi...](https://docs.microsoft.com/en- us/windows/win32/api/memoryapi/nf-memoryapi-readprocessmemory)

[3] [https://docs.microsoft.com/en- us/windows/win32/toolhelp/taki...](https://docs.microsoft.com/en- us/windows/win32/toolhelp/taking-a-snapshot-and-viewing-processes)

<comment><USER9> How clean is it? Can you simply exec the result?

Glibc used to have unexec(), which is fairly old, but it was removed because nobody used it (except Emacs, and there were better solutions to the problem it was solving).

<comment><USER8> > How clean is it?

It's as clean as any official Win32 API which uses their privilege system to restrict/allow accesses to each and any bit of information on the process state and/or memory.

> Can you simply exec the result?

This is possible using CreateThread() [1] which creates a remote thread inside another process execution context.

[1] [https://docs.microsoft.com/en- us/windows/win32/api/processth...](https://docs.microsoft.com/en- us/windows/win32/api/processthreadsapi/nf-processthreadsapi-createthread)

> Glibc used to have unexec()

My understanding is that unexec() was more about making a snapshot of the whole process state to an executable on disk.

<comment><USER10> That is my understanding too. Solaris had a flag for dldump ([https://docs.oracle.com/cd/E19455-01/806-0627/6j9vhfmop/inde...](https://docs.oracle.com/cd/E19455-01/806-0627/6j9vhfmop/index.html)). Emacs moved to a portable dumper (maybe inspired from XEmacs)

</comment></comment></comment></comment><comment><USER11> Totally, off topic, but it's funny to think about what kind of the feature would be if we put "un-" on each syscall:

unseek

unselect

unpipe

unsync

etc.

<comment><USER12> Emacs somewhat famously uses "unexec" in its build process, you build a skeletal Emacs in C (mostly the Emacs Lisp implementation), run it, load and compile and process a bunch of Lisp that implements the editor itself, and dump the resulting process memory back out to disk. The result of this eldritch process is the final emacs binary. When you exec emacs, you get an environment that consists of the editor code ready to go.

<comment><USER13> I'm given to understand that the macOS implementation of malloc had to have special-cased code in it just to support emacs due to this approach.

<comment><USER14> Why?

<comment><USER15> Because linkers are too easy?

It really looks like some overly clever college student's weird trick that somehow managed to survive for decades in an established product.

<comment><USER16> It comes from a time of machines executing instructions thousands of times slower than they do now. Literally – thousands. Memory access was about as fast as an instruction execution, so the amount of compute you can justify per unit of data was hundreds of times less than it is now. They did however have virtual memory systems with on demand page fetching.

Also, that machine was being time shared with a dozen or more users.

Launching emacs or TeX on this machine might take tens of seconds without access to unexec(), but only 3 seconds for the freeze dried version.

unexec() was easier at the time. There were no shared libraries, no address space layout randomization. One memory region grew up from the bottom, one down from the top. There was no mmap() jamming mysterious stuff in the middle. Just copy the bottom, copy the top, do _magic_ to adjust the stack for your unexec() call, and write the thing out as an executable.

(Yeah, I excised unexec() from BibTeX back in the '80s to port it to a 68k Mac for a coworker, then later implemented unexec() for a Motorola 88k based multilevel secure SysV system in the early '90s because launching emacs was driving me insane. I prefer our shiny new future of stupidly fast computers.)

</comment></comment></comment></comment></comment></comment><comment><USER17> And for something completely different - but in the same vein - a stand-alone 'cd' binary - [https://github.com/robertswiecki/extcd](https://github.com/robertswiecki/extcd) \- enjoy!

<comment><USER18> isn't this more or less the same as

        gdb -batch -n -ex 'call chdir("whatever")' -p $$

<comment><USER19> That does seem to be conceptually pretty much what it's doing. Except your version works on more architectures.

It's a simple example of ptrace() though.

</comment></comment></comment><comment><USER20> > Nevertheless, I think that with some effort two allocators or even dynamic > linkers could survive together.

Famous last words.

</comment><comment><USER21> > How limited is this approach?

> A: It's true that meshing address spaces is much harder than copying them. > ... [truncated] ... 64-bit systems with ASLR are far more forgiving. > Nevertheless, I think that with some effort two allocators or even dynamic > linkers could survive together.

That is a really cool side effect of ASLR!

[1]: [https://en.wikipedia.org/wiki/ASLR](https://en.wikipedia.org/wiki/ASLR)

</comment><comment><USER22> Does it pause the process whose memory it is copying?

Freezing the process can affect its correct operation. (Sometimes when I need a memory dump of a production java app, I can't take it because can not afford freezing a production app)

Without the freeze, the memory copy we get can be inconsistent.

<comment><USER23> I have no idea but the FAQ says it's CoW.

<comment><USER24> If I understand it correctly, it's more of a Copy-on-Read/Write, and as opposed to fork, it's only one-sided: read/write is only detected and results in a copy on the unfork side; if the original process changes memory, it doesn't result in a copy as nothing is monitoring this (the userfaultfd only monitors the unfork side).

<comment><USER22> The ideal approach would be if it turned the original process memory into "copy on write", and created a paused exact copy of that process. This would give a consistent, immutable, snapshot of the target process memory, without freezing for the duration of actual memory copying.

One could then take a core dump, java heap dump, or similar, of the paused copy process.

I'm curious, why does the tool try to copy the original process memory into the memory of the tool itself, risking a collision? Is it impossible to create a third process - an exact copy of the original process?

<comment><USER24> The FAQ says:

> all while leaving no ptrace and sending no signal

If this is a design goal, I'm afraid it is indeed impossible to take a snapshot of the original process. As far as I know (I researched the status quo 2 years ago when I needed copy-on-write for VM cloning/forking), the only way to make a snapshot of a process' address space is to invoke the clone (fork) system call. If you need to take a snapshot of another process, then you need ptrace.

But you're absolutely right that the unfork functionality itself can be implemented more robustly by doing this ptrace/fork trick.

</comment></comment></comment></comment></comment><comment><USER25> I've read the quirky FAQ and would now be interested in what this really does. The Readme mentions some demo code that's not in the repository. It also instructs us to run this on cat and enjoy, but... _what_ would we observe and enjoy?

</comment><comment><USER6> I wonder if 64 (well, 48) bits of address space is enough to glom together _every_ process on a normal Linux boot without collisions…

<comment><USER26> If you assume each process needs, say, 16MB of contiguous space, then you get 48-24 bits left, which by the birthday paradox implies you can have up to 2^(24/2 = 12) ~= 4k processes before you start colliding about half the time.

<comment><USER6> > If you assume each process needs, say, 16MB of contiguous space

Unfortunately I'm not sure that's a good assumption, due to the stack and heap needing to exist even for statically-linked binaries.

<comment><USER26> Yes, but simply replace with 'average number of allocations * number of processes' and * 'average size of allocation'

</comment></comment></comment></comment><comment><USER27> Isn't that a bit similar to what debuggers typically do when you ask them to attach to a given process?

<comment><USER6> Debuggers touch other processes from afar. This merges the debuggee into yourself.

<comment><USER28> No, it merges a copy-on-write clone of the debuggee into yourself. That's quite different and, indeed, you can do similar things with it that a debugger could.

If I understand this right,the process being unforked into you won't notice a thing and will happily chime on.

<comment><USER6> > No, it merges a copy-on-write clone of the debugger into yourself.

But you _are_ the debugger…

> If I understand this right,the process being unforked into you won't notice > a thing and will happily chime on.

Right, whereas when running an actual debugger you need to deal with signals and making sure you don't touch memory.

<comment><USER28> > But you _are_ the debugger…

Ah thanks. My autocomplete didn't like the word "debuggee". Edited!

</comment></comment></comment></comment></comment><comment> friend-monoid The inverse of fork is called join, right?

<comment><USER29> In the git context it's a merge. But Unfork() seems more like a rebase.

<comment><USER30> In the git context, fork doesn't really mean anything. That's just a github thing.

</comment></comment></comment><comment><USER31> You could build an entire new array of malware with this :D

</comment><comment><USER32> userfaultfd is an extremely intriguing hammer :)

<comment><USER33> The write protected mode[1], if it ever gets merged could have some interesting uses for GCs.

[1] [https://lore.kernel.org/patchwork/cover/1033856/](https://lore.kernel.org/patchwork/cover/1033856/)

<comment><USER32> I could imagine it being interesting for VMs and DBs too. Imagine a VM whose memory "looks" like virtual memory but under the hood is transparently persisted between invocations.

<comment><USER33> That's kind of one of the main uses of the API so far by QEMU for live migration of VMs by streaming memory on demand over a network [https://wiki.qemu.org/Features/PostCopyLiveMigration](https://wiki.qemu.org/Features/PostCopyLiveMigration)

</comment></comment></comment></comment><comment><USER34> Seems like this would be useful for re-attaching to a shell or process you have either disowned or otherwise lost control of. Would be neat to see some common use cases on the FAQ page.

</comment><comment><USER35> Is it just me, or is this something that would make Linux even more vulnerable to cyber attacks? What protections are there? Would OpenBSD's pledge prevent something like this?

</comment><comment><USER36> This is a hack.

I like it.

Refreshing.

<comment><USER37> if only "hackernews" had more hacks like this xd

</comment></comment><comment><USER38> Since it brings two processes together, maybe _spoon_ would be a better name.

<comment><USER39> Or, along the same lines, another four-letter word sharing two of its letters with _fork_. But that might be too distracting.

<comment><USER40> krof

<comment><USER41> I was thinking Fnnl (pronounced funnel)

But that's probably the name of a startup and would confuse people.

</comment></comment></comment></comment><comment><USER42> Whitequark is a Wizard. They should team up with Sammy.

<comment><USER43> Whitequark is better than Sammy in SW. He's also the maintainer of SolveSpace. [https://m-labs.hk/software/solvespace/](https://m-labs.hk/software/solvespace/)

<comment><USER6> According to her Twitter, Whitequark prefers feminine pronouns: [https://twitter.com/whitequark](https://twitter.com/whitequark)

<comment><USER44> By the parent comment I thought Withequark was a group/team of people.

English is also not my native language.

<comment><USER45> "They" can mean either a group of people, or a single person of unknown gender (or neutral gender).

</comment></comment></comment></comment></comment><comment><USER46> Sounds like alternatives for Git :) But seriously, need to read more on this.

<comment><USER47> alternative for git? i don't follow. can you elaborate?

<comment><USER48> I think they just read the title and assumed its a repository fork? No clue either.

<comment><USER46> Yes, apologies just having fun. At first glance, I thought it looked like Linux Alternatives.</comment></comment></comment></comment>


Cloudant (YC S08) Launches Its NoSQL Cloud Database Platform - <AUTHOR> http://techcrunch.com/2010/09/03/cloudant/

<comment><USER2> This seems like the right way to work on hard problem. Super smart team builds a product, gets early customers to use it on large datasets while they polish, tune, and iterate over a period of time leading up to launch.

Interesting pricing model too. It's more costly than some of the other hosted database services, but they also provide a reasonable free version so people can experiment with it. Good luck guys.

</comment><comment><USER3> I had an early beta account because I wrote two articles in January on using Heroku with external data services. Their system is very slick. Before anyone complains about paying, for example, $39/month for a 8 GB plan, they only charge for the latest version of each document, and not for replicated copies.

I am a big fan of sometimes using 3rd party services instead of paying the admin and infrastructure costs, so services like Cloudant, MongoHQ, etc. make a lot of sense for some applications.</comment>


Ask HN: How to self-learn Python? - <AUTHOR> Hey guys,
What's the best way to get started?
Thanks! <comment><USER2> Python.org has an official tutorial on their website:

[https://docs.python.org/3/tutorial/](https://docs.python.org/3/tutorial/)

</comment><comment><USER3> Try: [https://www.edx.org/xseries/gtx-introduction-to-computing- in...](https://www.edx.org/xseries/gtx-introduction-to-computing-in- python#courses) The courses are free, the money is for certificates of completion. There are a bunch of videos on YouTube.</comment>


We Fight to Defend the Open Internet - <AUTHOR> https://www.eff.org/deeplinks/2017/11/today-and-every-day-we-fight-defend-open-internet <comment><USER2> In addition to contacting your gov representatives, apply economic pressure on the companies who seek to profit from this bass-ackwards legislation, namely Comcast, Verizon, and AT&T.

If you are a Comcast, Verizon, or AT&T subscriber contact your respective provider and tell them you will cancel your service (or if under contract, not renew) if they continue to support the FCC's plan. Find friends and family who might also be current customers and ask them to file complaints with customer service.</comment>


Ask HN: Confession - I use fake staff names to make my company look larger - <AUTHOR>

I hope making this confession will make me feel better. Apologies for the length.
I started a startup in 2007 and convinced a very close friend to join me. We raised about $25,000 from F&F, left New York and moved to Silicon Valley because "that's what you do", right?
We rented a $900/mth flat in San Jose and settled in. The plan was to attend meetups, promote our product, meet VCs and hopefully raise more funding.
Our first VC pitch fell flat because we had no traction. I went back to the drawing board and fell into the killer feature trap. Feature and feature went into the product, month after month went past, and we burned our meagre cash.
We ran out of money. My co-founder went back to his day job but I decided I had to keep working. If anything, to pay my mum back her $10000.
I've finally got the product right, new business model and a few clients, including a subsidiary of AOL.
Here is the problem. Nobody knows that I run the company by myself. Just me, using multiple emails and aliases, doing customer service, marketing, tech support, software development etc.
I'm tired of doing so. I need more people but the company can't afford people yet. My friends are all in day jobs, trying to pay their bills so I can't ask them to contribute more than a couple of hours a week or the normal "can you give me a 2nd opinion of this design" question.
I read yesterday that Omar Hamoui (AdMob's CEO) was a one-man company when he got funded by Sequoia. I wish I could be open about being a one man company but I'm worried I may put people off.
Any advice? <comment><USER2> Stop using fake names immediately and start responding with your own name in all cases. Many customers will probably think: "there seems to have taken place a reorganization; cool, now I have a single contact person for all my concerns". They probably won't even bother to ask where the other guys are. And if they ask and you really don't know another way out, end this odyssey with a last single lie: you had to lay them off.

It is far worse if your customers find out by themselves that you lied to them. And I would say this is rather a question of when than if. Some of them will notice that all your employees have the same writing style and/or make the same spelling errors. I've once uncovered a "fake" company this way. The quality of their/his service was still as good as in the beginning, but I just couldn't trust them/him anymore …

Of course, you may lose some projects for beeing "to small", but it's even worse beeing known as a liar.

<comment><AUTHOR> You are right. It is a breath of fresh air for me. I'm going to take this advice.

It is just feels awful to lose business that you can execute perfectly well for a reason such as "being too small".

<comment><USER2> Of course it hurts to lose any business just because some of your potential customers think your company is too small.

Serve the customers you can get now well. Not only does "many a mickle makes a muckle" (a Scottish saying that reflects pretty well a saying we have in Swiss-German) but also the concentration of risk is much lower.

And don't forget: most companies/customers are (too) small by themselves and many of them prefer suppliers that make them feel more like VIPs than like numbers (we don't care about you - you're too small for us).

It's not only a disadvantage to be small. And after you have proven that you have come to stay, bigger companies will notice it one day.

</comment></comment></comment><comment><USER3> I don't recommend starting out on a deceptive foot. This will probably be discovered eventually, and may lead people to wonder what else you've been deceiving them about.

It's okay to have virtual E-mail addresses like "firstname.lastname@example.com", etc. for each category. But don't make them actual staff names.

When you say you can't afford people, do you mean full time, or at all (e.g. contractors)? Maybe you can find someone willing to work on something you need, which would give you a break. Then again, contractors can be expensive, so this would be a short term thing.

<comment><AUTHOR> Thanks for the advice. How do you suggest I get out of this jam?

<comment><USER4> At minimum, since you're in a hole, stop digging. If you've got fake names on your website, I second makecheck's advice to use "support@", "sales@", etc. instead. Transitioning out of fake names with customers you have an established relationship with may be a little more difficult.</comment></comment></comment>


Enabling FaceTime Over Our Mobile Broadband Network - <AUTHOR> http://attpublicpolicy.com/fcc/enabling-facetime-over-our-mobile-broadband-network/

<comment><AUTHOR> tldr; AT&T says net neutrality doesn't apply to pre-installed applications.</comment>


Cancer blood test 'enormously exciting' - <AUTHOR> http://www.bbc.com/news/health-42736764 <comment><USER2> Active discussion: [https://news.ycombinator.com/item?id=16184388](https://news.ycombinator.com/item?id=16184388)</comment>


Data retention and the end of Australians' digital privacy - <AUTHOR> http://www.smh.com.au/technology/technology-news/data-retention-and-the-end-of-australians-digital-privacy-20150827-gj96kq.html <comment><USER3> There were three really shocking things about this. Firstly, how little any of the politicians who voted for it understood what it was. Virtually none of them could even define what "meta data" meant, yet were casting judgement on the privacy implications of retaining it.

Secondly, how poorly drafted the actual legislation ended up being. Since nobody involved understood it, the law itself is a series of self contradictory statements that make very little sense. At some point they decided to exclude "web browsing history" but nobody obviously knew how on earth to write that in, so it became its own section that overrode the other sections to say that "nothing else in this bill requires retention of anything that could be interpreted to be web browsing history" \- despite the fact that the rest of the bill very explicitly details retention of web browsing history. As it stands, the law is unimplementable, and thus what is now happening is that ISPs are going through a process of getting "guidance" which is a euphemism for "since we can't legally operate any more given this law is unimplementable, just tell us what you want and we will do it".

Finally, the fact that there was a sudden and inexplicable spike in terrorism raids in the weeks when the bills were debated. There have been almost no raids since, and there were almost no raids before. Yet in those critical weeks, law enforcement just happened to decide that it was timely to execute a bunch of "raids", which have had no material outcome. In other words, law enforcement appears to be transparently corrupt and willing to abuse its powers for political ends. Which means we are very much well on the way to being a police state.

<comment><USER4> Politicians "not understanding" something is an age-old excuse. They don't even _give a fuck_ about anything besides themselves, because they're psychopaths.

They're smart too, because otherwise they wouldn't have managed to climb up the hierarchy of political power to their current positions, what with all the other smart psychopaths jockeying for position along with them.

So if it's in a politician's personal interest to vote X on whatever, then he will do so. If it's not, then he won't. It's as simple as that.

Understanding has nothing to do with it. It's not like they couldn't get someone to _help_ them understand, if they wanted to.

Also, the Australian government (along with any others that _can_ ) has been doing the things listed in the article already. They don't need permission _from themselves_.

<comment><USER5> > "It is difficult to get a man to understand something, when his salary > depends upon his not understanding it!" \-- > [https://en.wikiquote.org/wiki/Upton_Sinclair](https://en.wikiquote.org/wiki/Upton_Sinclair)

<comment><USER4> Yeah, but more accurately, his _bribes_ might depend on "not understanding" something.

</comment></comment></comment></comment><comment><USER6> As a voter in Australia I actually wrote and called my representative. The response I received was borderline insulting. At this point I have no choice but civil disobedience or to leave the country. Both of the main parties pushed this through and both are unlikely to ever repeal this law.

I'm angry. I feel betrayed by representative democracy. The system is absolutely insane.

<comment><AUTHOR> Yep. OP here. I left the country 15 years ago but care deeply about its downward spiral in to US-style totalitarian anti-democratic corporate hegemony. New Zealand seems to be doing a lot better, though still on the same path.

The sad fact is, I feel more free here in China than the US/UK, and it seems to me that Australia's only a little behind those jurisdictions in its rapid descent.

<comment><USER7> >I feel more free here in China than the US/UK

It seems a bit hyperbolic to write something like this right when the Chinese economy has been in a tail spin, and the Chinese government has been censoring the press coverage of declining value of public companies (many of which have significant government ownership stakes).

<comment><AUTHOR> Well, perhaps I should clarify that it's felt that way for a good while. Likewise, it seems telling that you conflate economy and freedoms.

<comment><USER7> >it seems telling that you conflate economy and freedoms.

What? I didn't conflate the two, and I don't know what that is telling _of_ exactly. The freedom to report (i.e. press freedom) on the economy and the economy itself are 2 separate things, and the Chinese government was censoring the press.

<comment><AUTHOR> You did conflate the two.

Me: "I feel more free here in China than the US/UK" [doesn't include economy]

You: "It seems a bit hyperbolic to write something like this right when the Chinese economy has been in a tail spin, and the Chinese government has been censoring the press coverage of declining value of public companies (many of which have significant government ownership stakes)." [includes economy]

That's called conflating two issues.

While you are correct that China censors the press, the western press is also deeply controlled and manipulated for political purpose. For example, the UK has more concurrent gag orders in operation than anywhere else on earth. US and Australian media ownership is ridiculously centralized, worse if you include viewership.

</comment></comment></comment></comment></comment></comment><comment><USER8> I am really happy the Anglo-Saxon World is shooting itself in the foot with technology.

I worked for a tech company in the UK who had german clients that produced economical policies that were used by Merkel's Cabinet.

It was the same time that the snowden scandals were all over the news and the client flat out told us no amazon, microsoft or american cloud computing platform.

It was a pain to find good European cloud providers but as a young 20 year old I was cynically happy - It meant that just like in the cold war - <USER2> never ran of jobs In my lifetime there wont be a shortage of jobs for programmers. Essentially the world had twice as many physicist ( Soviet and America ).

Snowden has been the best thing to happen to the tech world.

Finally I can stop making shitty apps to connect to amazon and make my own amazon !

<comment><USER9> My wish is not that the Snowden scandals cause European companies to make shallow clones of American cloud platforms but that libre / free software software and open hardware emerge. I feel this is the path to real privacy and freedom.

<comment><USER10> I could not agree more with this.

We need to figure out a way of making a more united front in this war. Its crazy how hard it is to reach people regarding the danger of all this surveillance, I feel completely drowned out.

<comment><USER11> The people you're trying to inform are incapable of seeing beyond what Big Brother tells them the way things are.

Best of luck waking others up

<comment><USER10> That's why the 'we' I was referring to doesn't include them.

</comment></comment></comment></comment></comment><comment><USER11> Before today, Australia was on my short list of countries to consider moving to, now its on a growing list of countries I'll have nothing to do with.

Looks like it might be time to make friends with some Kiwi's

<comment><USER12> What does your shortlist look like right now?

<comment><USER11> New Zealand, Switzerland, Chile

<comment><USER13> Mines: Switzerland, Czech Republic, maybe some caribbean island or south american country such as paraguay/panama. If PiratePartyIS win the election, they I'll be adding Iceland to the list.

I'm suprised that you listed New Zealand considering all the political dirty which came out of the Kim Dotcom scandal.

<comment><USER11> He hasn't been extradited from there as far as I know, hell he even set up a political party called the Internet Party last year.

The Czech Republic seems pretty cool too. The only reason I left it off my list as a place to reside is its strategic location.

</comment></comment></comment></comment></comment><comment><USER14> Sadly, I guess Fastmail will now have to change their privacy policy: [https://www.fastmail.com/about/privacy.html](https://www.fastmail.com/about/privacy.html). They were pretty openly appealing to people worried about surveillance but that will be more difficult for them now.

<comment><USER15> No they don't: [http://blog.fastmail.com/2015/04/09/fastmail-is-not- required...](http://blog.fastmail.com/2015/04/09/fastmail-is-not-required-to- implement-the-australian-metadata-retention-laws/)

<comment><USER14> That's great news, thanks - I hadn't seen that.

[https://news.ycombinator.com/item?id=10139442](https://news.ycombinator.com/item?id=10139442) is very worrying though and I'm sure that sooner or later the gaps in the law will be plugged since the intention is clearly to catch the likes of Fastmail. The direction that the law in Australia in general is taking is clearly towards more surveillance - Fastmail was top of my list of alternative mail providers, but this will definitely make me think twice even if they're exempt right now.

<comment><USER16> Unless Fastmail is really dumb, and they've not been dumb in the 6 1/2 years I've been using them, they've got contingency plans to move their business (as opposed to their servers, which can't realistically be in Australia with its very expensive connections to the rest of the world) to a better jurisdiction if/when Australia continues to have the 1st World's worst Internet regime.

They've already experienced this sort of thing in the 2010-2013 period when Opera in Norway owned the company ([https://en.wikipedia.org/wiki/FastMail](https://en.wikipedia.org/wiki/FastMail)).

</comment></comment></comment></comment><comment><USER17> Australia also has one of the slowest internet in the world, which is a consequence of the Telstra monopoly there. It is just sad data retention happens now, it will only hinder even more future development in the IT sector.

I lived there for one and a half years then moved back to Europe, enjoying my 500mbps fiber connection.

</comment><comment><USER18> Growing pains of the post privacy era.</comment>


Wunderlist is shutting down on May 6th, 2020 - <AUTHOR> https://mobile.twitter.com/dhh/status/1229453834126127104 <comment><USER2> The official blog post (December 2019):

[https://www.wunderlist.com/blog/join-us-on-our-new- journey/](https://www.wunderlist.com/blog/join-us-on-our-new-journey/)

Previously on HN (10 posts):

[https://hn.algolia.com/?dateEnd=1581963065&dateRange=custom&...](https://hn.algolia.com/?dateEnd=1581963065&dateRange=custom&dateStart=1573344000&page=0&prefix=false&query=wunderlist&sort=byPopularity&type=story)</comment>