Grass is always greener on the other side. For any other industry, we can find good and bad examples. Nuclear powerplants were considered rocksolid in Japan and now see how people see it. Delta rockets were always seen as stellar but now see how people feel about Falcon vs Delta rockets. 70s/80s were not any better or worse than today, if 80s industry was so good and fair, we would not see any movement like GNU.
It is all business.
My rule of thumb for engineering is that engineering is the transfer point of scientific knowledge to business. An engineer should understand both sides sufficiently well and act accordingly. Usually what I see is, though, that engineers fall in love with science and hate business.
I’m sorry I don’t understand what this is. What would I do with this? Is this similar to like Electron?
He tries to target a certain slice of nodejs usage: secure execution of short living scripts like command line tools, scientific calculation programs.
The only thing I have found interesting is that using sandboxes to achieve that. However, why can’t NodeJS do that, too?
because of the way it’s designed, as described in the talk. changing that would break way too much stuff, like libs which rely on linking to C in order to function.
one cool thing about Deno is that it seems like one could make a “codepen”-style JS code pasting/collaboration service really quickly, and not have to worry about sandboxing the code execution like you normally have to do. the fact that its package management works by using URLs makes it even easier. just import React from "https://unkpkg.com/react-0.0.1/react.js" and you’re done. no messing around with package managers, no worrying whether it’s down, no worrying about depending on “yet another package ecosystem” if you’re coming from other places like Python or Ruby.
What are your thoughts on https://proton-native.js.org?
I really like React as a view layer and looks reasonable to me to be able to access native ui libraries through Javascript like being able to use Python for similar purposes.
The underlying problem is that an average young individual has so much free time that they cannot fill it with meaningful activity, the next best thing they have is social media and games.
Parents are too busy with their lives and never in time they had so much responsibility to be 24 hours available to their children.
My hope is that people will look for building more local communities where they and their children come together and ease the burden on both on them and their children. A rethought school system or a more organized unschooling culture may provide that.
I disagree - I had oodles of free time as a king and spent it playing outside with other kids or reading books.
I have a hard time in understanding how decentralized systems are better at protecting me from abusive government agencies, groups, and even individuals? With big online companies, it is not perfect but, as a citizen I have more tools to ask for accountability.
And even for daily stuff, how can I trust “decentralized” systems run by some individual who may or may not be good at following security best practices etc. Again, with big online companies, again it is not perfect but, I have more power as a citizen.
I think centralized systems scale better when it comes to power / responsibility balance.
I vote against decentralizing lobster but happy to read more counter arguments.
It’s more about people outside the US. Big Corps like Reddit or Google basically follow the US law and the US law mostly protects only US citizens.
Instances in the fediverse follow local law (which is why usually people don’t federate with Japanese instances that allow NSFW material) which is great if the US law is silly in your culture/country.
The easy answer is simply that you pick a community, not a corp for your server. If you pick a corp for your server you should pick on in the same legislation as you are in.
It’s even good for people within the US; for instance, I can pick a fediverse server in Germany and know that the admins will be required by law to ban nazis even though I don’t live in Germany.
I agree that federating big platform like reddit, Twitter, or YouTube makes sense because these platforms host multiple communities with conflicting norms and expectations regarding privacy, speech, etc. In an ideal scenario, individual reddit nodes could choose to omit subreddits they found objectionable or implement their own local censorship regimes (a la USENET).
That said, I am inclined to agree with ctulek that lobste.rs is best suited to central hosting. In scale, lobste.rs is more like an individual subreddit than the reddit platform. We pick our community each time we choose lobste.rs over other forums discussing similar topics.
I agree, yeah, Lobsters is more like a single sub but it could be useful if lobste.rs could federate…
It is very likely that AWS, or Linux, or many other services/projects are used by governments for doing bad stuff. I don’t understand what is so different in this case.
In this case, you are being personally enlisted to aid directly in the immoral activities, not just using a service that other people also use.
In this case, you are being personally enlisted to aid directly in the immoral activities
In the same vein, you’re personally enlisted to aid in killing innocent Afghanis through paying taxes. Oh, and ruining people’s lives for possessing a certain plant, etc.
These are obligations imposed on you by the state, which cannot be opted out of, and are quite indirect compared to contributing to a database of pattern recognition whose only purpose is targeted murder.
Not sure what you mean, but the fact remains: through taxation, we’re all enlisted to aid in doing all kinds of nasty/crazy/immoral shit that we wouldn’t voluntarily aid in doing. That’s why they need to take our money by force.
Yes, that fact remains. This article is talking about opting out of something voluntary. I’m not seeing the point of confusion.
Thanks for the reply. I read the article couple more times but still don’t see the connection.
As far as I understand, if you use AGPL there are thousands of companies who won’t use your library either.
The author’s open source projects don’t seem to be directly used for drone technology, either. Even then their argument looks weak to me.
I support protesting Google for their actions in involving in immoral projects. And I appreciate the author of this article for suggesting one another way to do that but it looks a very weak one to me.
I support protesting Google for their actions in involving in immoral projects. And I appreciate the author of this article for suggesting one another way to do that but it looks a very weak one to me.
I certainly don’t disagree that its persuasive power is low; I only argue there’s a big difference in “participating in directly aiding an morally defective project (like reCaptcha hypothetically asking you to select drone targets) with ones own abilities (human image recognition)” and “using a service or project (like AWS) that is also used by morally defective actors (like governments)”. The latter is impossible to avoid (like taxation, as @rama_dan points out), the former possible.
BTW, C is simple, but I still can’t write something more than Hello World (or GTK window with single button) in it. Unlike C, I think if you know Rust, you already know how to write programs in it.
I feel like I know Rust well enough but when I try to do some things they can take more time than I expected due to borrow issues cropping up, and I am comfortable with unmanaged ownership generally. Most of this comes down to using the language on a periodic enough basis that it is not quite second-nature.
As a result I’m reluctant to use it unless I know exactly what I want to write in it, mostly because my time is limited and I’m worried I’ll get stuck. At the same time I really like the resulting code. It’s just a matter of shifting perceptions and expectations for what one gets done in a given coding session.
Doesn’t Rust have optional, reference counting? A few people deep in the borrow-checker vs full GC language threads on HN drop in saying you can do checked references in Rust. If so, that means times where borrow-checker is hard dont necessarily imply ditching Rust for that project: could just ditch the borrow-checker until better at it or not at all if it’s throwaway project. Then, recommendation becomes use Rust with borrow-checker for full benefits but reference counting for most.
Also, these plus veterans’ solutions might form a corpus of sorts for helping people figure out how to get things through borrow checking. The posts on linked lists come to mind. Another benefit is testing alternative schemes for checking pointers to see over time what usability improvements are available.
Rust has a ref-counted type. https://doc.rust-lang.org/std/rc/struct.Rc.html
Also, boxing (heap-allocating) data structures moves you back from a borrowing situation to an ownership situation, which is generally easier.
I recently made an advanced workshop with Servo people and the general gist was: most values that travel far within the program should be handled through owned data. The veterans solution is: don’t borrow for too long :). This is intuitive: borrows are pointers and pointer structures get harder with each layer, so does the lifetime situation.
I wish I had a good example at hand quickly, if I find one, I’ll blog about it.
Thanks for the tip. That already makes some sense to me similar to concept of avoiding action at a distance. You might still want to keep developing the idea further, though, since folks keep tripping up on this stuff.
As a newbie I came across to that advice couple of times but my impression is that if I use reference counting or similar approaches instead of borrow-checker, I am afraid to end up with a code that is not designed with borrow-checker in mind.
With all toy projects I tried, I find myself changing things a lot between my first attempt of designing an API and clearing up all borrow-checker newbie mistakes.
In that regard, so far, I wasn’t able to end up with good designs and still don’t feel comfortable with ownership idea at all.
As a newbie I came across to that advice couple of times but my impression is that if I use reference counting or similar approaches instead of borrow-checker, I am afraid to end up with a code that is not designed with borrow-checker in mind.
Hm, so. In the end, the borrow-checker is a validity check. Not needing the borrow check at certain places is not avoiding it. People feel like a cheat for not using a language feature, but that’s really not the case.
With all toy projects I tried, I find myself changing things a lot between my first attempt of designing an API and clearing up all borrow-checker newbie mistakes.
In that regard, so far, I wasn’t able to end up with good designs and still don’t feel comfortable with ownership idea at all.
It’s part of learning a language (and not to be understanded) to come to good designs. I generally recommend starting with a bad/mediocre design and than refactoring. I have projects I rewrote 4 or 5 times to learn. I can get a couple of hints there, though.
Outschool (YC W16) is the marketplace of small-group online classes for kids, K-12. Our live video chat format makes awesome learning experiences available to kids around the world.
We are a product-focused team of seven in SF, with experience in education, marketplaces, software, and operating online services at Udemy, Amazon, Airbnb, YC, Square, Google, and several startups. We have an exceptionally sane work culture for our early stage: no egos, boondoggles or fake urgency. We pay attention to our users and prioritize carefully, start simple, run experiments, then iterate.