Google Meet premium video meetings–free for everyone - <AUTHOR> https://blog.google/products/meet/bringing-google-meet-to-more-people/ <comment><USER2> Can someone tell me the difference between Google Meet, Google Hangouts, Google Duo and Google Chat?

Multiple of these support video and chat. I've used Hangouts and Chat and Duo before. Why the new brand "Meet"? And why have competing - even more importantly - confusing products at Google who seem to offer the same features?

I would like to, but cannot be bullish on Google as a video communications platform for this reason.

<comment><USER3> It has extremely valid market reasons.

Google Hangouts = the original chat+video product which was semi-popular, but never got _huge_ traction and mindshare the way WhatsApp, Slack, the original Skype, or the newer FaceTime did. And now Zoom and Teams.

So Google realized it had to compete better against all of those, all of those being very separate communications channels with different priorities. Hangouts could never be an awesome focused product if it had to be all things to all people.

So the competitor to Facetime/WhatsApp/FB Messenger is Google Duo. It's originally phone-based and designed primarily for 1-1, though it supports small groups.

The competitor to Zoom and Teams is Google Meet. It's enterprise-based for huge meetings.

The competitor to Slack is Google Chat.

And Google Hangouts is this zombie product that used to do everything, but never as well as any of the competitors, and still has moderate consumer usage so they can't kill it, though I'm sure they're doing their best to figure out how to get people to migrate eventually without losing them to a competitor in the process.

So despite all the flak Google gets for a fragmented messaging ecosystem, it's driven by _extremely_ valid market reasons.

And _Google_ isn't a video communications platform, it's a company. With several platforms, serving several totally distinct markets.

<comment><USER4> Funny ... none of those other "competitors" seem to feel the need to have 4 different products in order to operate in this space. Each of them is expanding its reach and capabilities, coming from a place of strength.

Google is just practicing "me-too"-ism and not really trying to solve a problem except some engineer is bored and some product person thinks these tools could become a threat to ad dollars if allowed to grow "unchecked".

Google owns YouTube (which you forgot to include YouTube Hangouts On Air). Google absolutely is a video comms company.

<comment><USER5> Facebook, Messenger, Whatsapp and Instagram are all run by Facebook and have variously incompatible messaging capabilities.

<comment><USER6> Sure, but Facebook didn't name them Facebook Groupchat, Facebook Chat and Facebook Talk.

People actually understand the difference between the various Facebook products, unlike the Google products.

<comment><USER7> When I ask people what Instagram is for, they always describe it as Facebook, but without all the crap. Or as Facebook with posts sorted chronologically. Doesn't make me want to sign up with it, and end up with another Facebook.

</comment></comment></comment></comment></comment></comment><comment><USER8> I use meet professionally on a daily basis as my company is a GApps for business customer and most people I talked to are pretty satisfied. Sound, connection and video quality is very good, far better than Slack in my opinion. We had meetings with more than 100 paticipants. Integration in Google Calendar is also a big plus.

One pretty minor thing that bothers me is that the webcam and mic mute toggles and the hang up button are blended in and out on moving the mouse cursor during a call. I'd prefer to at least have the option to let the toggles stay onscreen as I tend to use the mute mic toggle a lot during a meeting. Also there is a moment of awkwardness every time a call ends because many participants look for the end call button.

It's a great thing that I can use my Smartphone as a mic during a meeting. Would be great if this could be expanded to my phones' cam as a webcam replacement.

<comment><USER9> > One pretty minor thing that bothers me is that the webcam and mic mute > toggles and the hang up button are blended in and out on moving the mouse > cursor during a call. I'd prefer to at least have the option to let the > toggles stay onscreen as I tend to use the mute mic toggle a lot during a > meeting.

Could not agree more. Also, the shortcuts to mute audio and video are multiple key combinations and differ across platforms (i.e. using the command button on MacOS and Ctrl on other OSes). Why can't they be a single key, like M to mute/unmute audio and C for the camera? Heck, maybe even use spacebar for mute/unmute since it's _that_ key of a feature?

<comment><USER10> This handy Chrome extension makes Meet work via a push-to-talk using the spacebar, with many config options [https://chrome.google.com/webstore/detail/google-meet- push-t...](https://chrome.google.com/webstore/detail/google-meet-push-to- talk/pgpidfocdapogajplhjofamgeboonmmj)

But why doesn't Meet have these features already...?!

</comment></comment></comment><comment><USER11> I left Google and the Meet team a while ago. Would have been great to experience this 30x growth though! Being oncall these days would have been interesting.

I have used Meet a lot both personally and professionally this spring and I think it's great. Been waiting for this announcement!

<comment><USER12> I'm a loyal user of hangouts.

</comment></comment><comment><USER13> I work for Google, but not on anything related to Meet. I'm most excited about this because the video/audio quality is much higher.

When I use Zoom with friends, everyone is usually 320x240, or maybe 640x480 if there's only one person. Doom was 320x240 in 1993.

In Google Meet, I usually see people at 1280x920. A 4k monitor will fit 6 people at that resolution.

I value this higher resolution because it makes me feel more connected to people.

<comment><USER14> I'm not really excited that every meeting participant will be able to see my facial flaws in 4k HDR with dynamic surround.

The tech is not interesting, the UX is less interesting than Zoom or webex. The first hangout version was far more exciting than Google Meet, Duo or Latest-Hangouts.

Like every other industry, Google lost its ability to push boundaries forward and act as a beacon for innovation. "Higher resolution" is definitively not innovation.

<comment><USER15> > I'm not really excited that every meeting participant will be able to see my > facial flaws in 4k HDR with dynamic surround.

Do you meet people in person?

<comment><USER16> It's not really the same is it? Your face appearing an unknown size/quality to however many people are at the other end is a different experience.

</comment></comment></comment></comment><comment><USER17> > We do not allow anonymous users (i.e., without a Google Account) to join > meetings created by individual accounts.

If there is no guest accounts this will not be intresting for many.

<comment><USER18> Agreed.

While requiring a Google account to host a meeting makes some sense, requiring an account to _join_ a meeting will simply mean too much friction and users will use another platform.

The equation is simple. Users use the first platform they can find where both sound and video works for every person they want to talk to. "Jim can't get into the call" soon leads to someone piping up "shall we try zoom instead?".

It's easy to see how this happened too - all Google engineers have Google accounts (for their work), so when testing this out, never encountered the issue.

I predict they'll change their stance in a few months when they see zoom still crushing them in user numbers, but by then it'll be too late - people will remember meet as that app which is "finicky to get to connect because everyone has to remember their password"

<comment><USER19> > _" finicky to get to connect because everyone has to remember their > password"_

Speaking of that, my last experience with Google Meet in business setting was this: every other meeting someone from our team would disappear in the middle of a call and reappear a minute later. Reason? Google's bullshit random "you need to re-verify yourself and type in your password NOW NOW NOW!" prompt that logs you out until you comply. Since us developers only used our company GSuite accounts for Meet calls (all communication unfortunately went through Slack), the only time we'd get this prompt would be a few minutes into the call.

<comment><USER18> Can someone from the gaia team change the default cookie validity period down by 20 minutes (ie. from 30 days to 29 days, 23 hours, 40 minutes) to resolve this issue?

<comment><USER19> As silly as it sounds, it would probably resolve this issue perfectly. As I remember, I always got the login prompt at roughly the exact same time into the meeting, suggesting it's just set to expire after a certain amount of whole days.

<comment><USER18> Google internally is well aware of this, and in fact one internal tool most engineers use actually has an expiry a few hours short of 24h simply to prevent exactly this issue.

<comment><USER20> But it's not fixed because....?

</comment></comment></comment></comment></comment></comment></comment><comment><USER21> I don't have the mental space to waste filling it with details of another Google communication product they are going to discontinue in a year.

<comment><USER22> Google products ( and other tech company products ) are discontinued when they don't take off. Meet has a 100 million daily call participants.

And really with video conferencing product, I don't get the whole trope of "but they might discontinue it." \- the utility is immediate in terms of the calls that you make with it, and time boxed till by when a call ends.

<comment><USER23> > And really with video conferencing product, I don't get the whole trope of > "but they might discontinue it." \- the utility is immediate in terms of the > calls that you make with it, and time boxed till by when a call ends.

Not true at all. I have a bunch of recurring meetings in my calendar, and each one has a Zoom link in it.

If I wanted to switch to Meet, I'd have to redo each of those invites with a new link, and then hope everyone noticed the update.

They won't, so I'll spend the first few weeks individually pinging people reminding them of the new conference software, and then waiting 10 minutes for them to download, install, and configure it before joining us.

And then if I decide to switch back, I get to do it all over again.

<comment><USER24> > Not true at all. I have a bunch of recurring meetings in my calendar, and > each one has a Zoom link in it. If I wanted to switch to Meet, I'd have to > redo each of those invites with a new link, and then hope everyone noticed > the update.

If you use Google Calendar, I believe a Meet link is automatically added by default.

> They won't, so I'll spend the first few weeks individually pinging people > reminding them of the new conference software, and then waiting 10 minutes > for them to download, install, and configure it before joining us.

That doesn't make sense. Meet is done exclusively through the web browser.

> And then if I decide to switch back, I get to do it all over again.

What stops you from having both so you can try both? Those Zoom links aren't obsolete the moment you add a Meet link.

<comment><USER23> > If you use Google Calendar, I believe a Meet link is automatically added by > default.

For a new event, yes. For an existing event, I'd have to replace the existing Zoom link.

> That doesn't make sense. Meet is done exclusively through the web browser.

You're assuming the person I want to meet with already has a Google account.

> What stops you from having both so you can try both? Those Zoom links aren't > obsolete the moment you add a Meet link.

Because of the confusion I mentioned before. You'll end up with some people in the old meeting and some in the new.

I speak all of this from experience of being in a corporate environment that moved from WebEx to Hangouts. It took weeks to get everyone to switch over and was a ton of work updating all the recurring meetings.

But the overall point is that the switching cost is much higher than just the time boxed meeting.

<comment><USER25> You don't need a Google account to join a Meet meeting. [https://support.google.com/meet/answer/9303069?co=GENIE.Plat...](https://support.google.com/meet/answer/9303069?co=GENIE.Platform%3DDesktop&hl=en)

Re: your corporate switching experience ... this is a failure of the company culture, not a technology problem.

</comment></comment></comment></comment></comment></comment><comment><USER26> I've been using Google meet as a remote student for a while (Google made meet available for free for education accounts a while ago already) and it's been a great experience, even with large groups of people online. We tested up to ~80 without any problems.

<comment><USER27> Just was in a meeting with literally 250 people today, was really impressed how it held up.

</comment></comment><comment><USER28> > _We do not allow anonymous users (i.e., without a Google Account) to join > meetings created by individual accounts._

Reminder: it is impossible to get a Google Account without giving your phone number (and thus permitting access your traditional identity information with it: name, street address, et c) to Google, who can then tie it to any existing Google cookies and your IP.

Demanding that your communications partners dox themselves to Google to talk with you is incredibly rude.

<comment><USER29>
      it is impossible to get a Google Account without giving your phone number

I just now tried the Google account creation process on an unactivated mobile device, and entering a phone number can be skipped. Entering a birthdate was mandatory.

<comment><USER30> Try to use it for a while also. My experience has also been that, after a short time, you will be required to provide your phone number for security reasons.

<comment><USER31> no it's always optional - they recommend adding one to be able to retrieve a lost/hacked account

<comment><USER32> It depends on their risk assessment based on all sorts of stuff (perhaps like your IP, browser info, mouse movements etc.). If you're suspicious (VPN, Tor, heuristics etc.), they require the phone confirmation.

<comment><USER33> Can confirm, I can create a google account on android without phone number but I cannot do so on desktop. When using the android-created account on desktop, it requires (not optional) a phone number.

A phone number on a fully functional google account isn't optional, at least in western Europe (though I doubt another country is better because then people would just VPN to there).

I once did some work for Google that required accounts to do the project (existing accounts weren't a good fit for the project). They couldn't provide us with accounts because it was a huge hassle and another team, so I ended up standing in line for a long time getting my identity verified a half dozen times for various prepaid sim cards with throwaway phone numbers and I think we billed them for it. If there had been another way, they'd simply have told us...

</comment></comment></comment></comment></comment></comment><comment><USER34> They're late to the party. The canapes have been consumed, the beer has been drunk and everyone's down to that miscellaneous yellow dip and the leftover breadsticks.

Zoom has won, Google, with Teams coming in a respectable 2nd place. No-one's got any reason to use your product.

<comment><USER35> Google Meet has 100M daily active users... and they're adding 3 million users a day. I don't... think the party is over. Those of us using GSuite appreciate not having to also pay for Zoom, and use it religiously. And its conference room hardware is nice, too. Plus, it's tightly integrated into Google Calendar.

</comment></comment><comment><USER36> When we went all-WFH in March, my company switched to Meet for almost all of our meetings (though some use WebEx), and it's fantastic. Audio quality is great, nobody has trouble connecting, etc.

</comment><comment><USER37> Ok, sorry for being dumb. Is Google Meet actually an entirely _new_ service, or just re-branded Hangouts?

When I make a calendar event and choose to add video meeting to it, it's now a Meet, when it used to be a Hangout.

My experience with Hangouts (as recently as a week ago) was rather poor. Is Meet actually good/better?

<comment><USER35> Your confusion is fair, considering that, up until two weeks ago, Google Meet was actually called Google Hangouts Meet. And yes, it is a completely and entirely different service.

Hangouts is still the legacy chat program that featured some video and voice call capabilities. Meet is their Zoom competitor, built for GSuite users, and is under active development and is a very solid product with very strong video/voice performance, up to 250 attendees, dial-in numbers, live transcriptions, recordings, screen sharing, etc.

They rebranded it as Google Meet literally two weeks ago. They are killing Hangouts Classic. They have... also spun up Google Chat (formerly Hangouts Chat) which is... a pseudo-competitor to Slack, and an evolution of Hangouts, but only for GSuite users, with the intent of killing Hangouts Classic (the evolution of GTalk) early next year.

Meet is far more advanced and better supported that the legacy Hangout for a conferencing tool. It is far better, and we really prefer it. (Though, because it also bears mentioning, Google is ALSO working on Duo, which is their CONSUMER video chat program, which has some neat features, like AI audio gap- filling and super-low-bandwidth AV1 codec benefits, which I hope make the jump over to Meet soon...)

<comment><USER37> Thank you for listing an ecosystem of services that, from my point of view, seem to be overlapping quite a bit.

I hope they can prune or merge some of it, because it sounds exhausting: do I as a GSuite user talk with an external person (say, for a job interview) over a Meet or a Duo or a Hangout Classic... and what are the privacy policy implications of such a choice? Too exhausting!

<comment><USER38> I hope they don't prune Hangouts, but if they do then at least I can delete my Google account since it won't be of much use anymore.

</comment></comment></comment></comment><comment><USER39> No end-to-end encryption plus forced Google Mail registration preventing anonymity. Yawn, Google. Yaaawn!

<comment><USER40> Meet supports up to 100 participants. That would be pretty tough to do e2ee. Is there a service that can do that?

<comment><USER41> How come this is hard to do with 100 participants? Not a crypto or video encoding expert, but I'd have thought each participant would have a decryption key for their stream, and this key they would transfer to others by encrypting it separately with each other participant's public key and then broadcast that bundle to everyone. Thus everyone else can decrypt only their entry in that bundle using their private key, and gain access to the shared decryption key for that individual stream. When a new person joins, they add their public key to the central list of public keys, and request that everyone update their bundle to include an entry encrypted with their public key. So basically, from the perspective of the new joiner, each stream would be encrypted until that streamer had updated their bundle to allow the newcomer access to their decryption key. But each streamer would still only need to encrypt their stream once, and then share access to the decryption key only to participants. Scaling wise, sending only incurs the cost of encrypting once - though as a receiver, you'd need to decrypt N streams using N different keys - but is that much harder to do than decoding N video streams in the first place?

<comment><USER42> Consider resolution. With non encrypted video, you receive one hd stream. With 100 people, you'd need 100x the bandwidth, and supporting things like highlighting speaking people would need to be done client side.

<comment><USER41> I honestly thought that was the case already (that highlighting is happening client side, and that my client receives each stream separately). So what you're saying is that currently a central server is performing the task of merging those 100 streams into a single stream for users. So it needs to do this separately for each user configuration of how they want to see the streams?

<comment><USER43> 1\. Basically, in a peer to peer topology you'd have 100x99 streams going. Everyone sending to everyone.

2\. With a star topology and a central SFU you have 99x2 connections only. Much less bandwidth being used. The economics is that everyone pays the central server.

3\. Now, I would wager there is a way to do some sort of sparser version of option 1 with beefy peers playing the part of "supernodes". I think that's how skype used to work before M$ bought them and made it less P2P

But regarding the encryption, yes you can have an SFU or whatever but you won't have adaptive resolution of the SFU or supernodes can't decrypt your stream in transit.

</comment></comment></comment></comment></comment></comment><comment><USER44> [https://news.ycombinator.com/item?id=23017478](https://news.ycombinator.com/item?id=23017478)

</comment><comment><USER45> I have never used Google Meet, and don't intend to use it now either. Anyone who wants to have just a group video or voice call with others (close people or acquaintances or strangers) can use Jitsi Meet (meet.jit.si). Jitsi Meet can also be self hosted if you prefer that. Jitsi Meet doesn't require registration for anyone.

We need to promote getting out of the Google and Facebook webs.

</comment><comment><USER46> Google has yet to build a chat tool better than the old GChat / GoogleTalk- Gmail integration. It had voice and video (though not amazing quality, but it was 2006) and the chat was top-notch. It worked, it was integrated in my Gmail and it had text statuses which was honestly the best social media I ever used in my college days.

<comment><USER47> When they took that away it affected who I communicate with.

<comment><USER9> Same. I still miss Google Talk. It was the pinnacle of instant messaging, following and improving upon AIM/ICQ/MSN/Yahoo which preceded it. I used it with Pidgin.

It's all been downhill from there, now that everything is just a web app and you don't have an application that can sit in your systray and open its own windows.

</comment></comment></comment><comment><USER48> Good news for all the school people that has been using it for learning purposes only (eg my students). That said there are good alternatives already like jitsi or - time limit apart - zoom.

</comment><comment><USER49> > Here are just a few of our default-on safety measures:

> • We do not allow anonymous users (i.e., without a Google Account) to join > meetings created by individual accounts.

So, all participants need to create Google accounts. How convenient for Google.

I don't necessarily want to ascribe maliciousness here—there are certainly user-centric reasons to set it up this way. But, isn't it interesting how many of the security measures implemented by tech companies also just happen to align with their business interests in other ways?

<comment><USER50> Freedom and privacy are often at odds with security in most areas in life. During war-like situations, security (speaking in the general sense, rather than purely technical) becomes a greater concern, so those companies that have positioned themselves that way will have increased opportunities.

<comment><USER51> There are other solutions around authentication that would be perfectly fine and still privacy-conscious. It's just that anything other than forcing you to login using a Google account doesn't mesh with their strategy of ensnaring users and adding to their all-encompassing profile of you.

</comment></comment></comment><comment><USER52> This is great, did they list the financial commitments they made to keeping this product running for a minimum of 10 years? Because I don't see why anyone would migrate to a Google product. If you start using Zoom today, you've got a fair expectation that it will be around for a while. If you start using Microsoft Teams you can be extremely confident it'll be around for heat death of the universe. If you start using Google Meet today, I'd advise you to have a backup plan.

<comment><USER53> Meet isn't a type of product that takes effort to migrate from. It's per meeting.

Also, it's part of G Suite that they sell to companies, so it shouldn't be discontinued anytime soon. For free for consumer however, nothing guaranteed.

<comment><USER52> When I've got a calendar full of meetings and they all have meeting links in them then yes, migrating away is going to be a pain- and that's assuming that they just EOL the product, and don't do what they've traditionally done which is to try and force you into one of their other crappy products. I still remember when every youtuber got forced into Google+. Youtube is per video! How bad could it be! Turns out, pretty bad.

</comment></comment></comment><comment><USER54> Javier Soltero has a long history of getting useful shit built well and in people's hands, quickly. Nice to see him still at it, not hampered by even Google's bureaucracy.

</comment><comment><USER55> > We do not allow anonymous users (i.e., without a Google Account) to join > meetings created by individual accounts.

Is it considered acceptable use to create a throwaway Google account specific for this service?

It's be nice to have a video chat platform not controlled by China for the common man but I wouldn't want my personal social activity on it to be directly linked to any real Google account.

</comment><comment><USER56> I use Meet many times per day for business and I'm very ready to move to something else. I am constantly hit with the issue where a user clicks the "ask to join" button, but the hosts nor anyone else ever sees a pop-up to admit them into the room. Super frustrating when on a phone call with a client trying to get Meet to work.

</comment><comment><USER57> Why would people give meeting information, content, participants list to be parsed and advertised against to Google?

</comment><comment><USER58> Does this give better sound quality? Because the sound quality on meet (Or is it Hangouts?) has been abysmal for the last few years. I also have no idea what meet actually even is these days. Is it just a rebranded hangouts or did they add something and merge Hangouts in?

<comment><USER59> I've used it and never noticed bad call quality and it performed pretty much very similar to Zoom. Not needing an installed app is a huge bonus.

<comment><USER18> Zoom doesn't require an app, they just hide the link to use the web version pretty well.

You have to click to download the app, then cancel the download, and the link to join via browser appears.

<comment><USER60> There's an asterisk to that. There was a not insignificant chunk of time that Zoom had to disable their web client, which was a pain...

</comment></comment></comment></comment><comment><USER61> Google Meet is fine, but it's lacking a native app on desktop. Google being Google, my bet is that they'll never make one, and that's a pity. Some prefer not installing apps, but many like this separation. Think zoom, slack, teams, etc.

</comment><comment><USER62> Just tried out this Tactiq extension which will save the Closed Captions. Freaking sweet! Instantly the new standard for our meetings.

[https://tactiq.io/](https://tactiq.io/)

</comment><comment><USER63> Can't wait to install another app that does the same thing as 99 other apps on my phone. I mean, it good for everyone, right? A hundred apps with same functionality that I need to run simultaneously because people are using all of them, that should do something for higher end phones

</comment><comment><USER64> Google's just realised it's been asleep at the wheel eh? Used to be they'd fart out an internet changing mail service on a whim, now they pivot about as fast as an aircraft carrier in treacle.

Better luck next once in a lifetime pandemic, big G

<comment><USER65> Maybe if Zoom farted correctly it wouldn't be mired in bad PR about security.

<comment><USER64> Unfortunately the masses aren't really phased by internet security issues

</comment></comment></comment><comment><USER66> Yay, more free training data for Google's ASR and computer vision algorithms!

</comment><comment><USER67> Another Google service that I will not use because of privacy concerns.

<comment><USER68> You can use Zoom and have them install backdoors and give your information to Facebook.

<comment><USER33> ... or Wire or Jitsi or Signal or Jami or one of a dozen others. Heck, even WhatsApp and Microsoft Teams are preferable to these two.

But yeah let's single out the only alternative that's actually worse and give that as counter-example.

<comment><USER68> You can't even compare 100+ group video chat services to 1:1 or 1:10 video chat solutions.

</comment></comment></comment></comment><comment><USER69> It's as if a world of people have chosen to ignore how Google makes billions of dollars a year. Choosing Google rather than Zoom for privacy's sake doesn't address these concerns.

Nothing is free, especially when Google is providing the service. You are the product.

How are you the product with Google Meet? I can speculate, based on how it monetizes information in its other products. Google is processing all of the conversations through its deep learning systems, harvesting insights about everything discussed.

This heightens privacy concerns 100x from whatever Zoom was attempting.

Where are the activist blog posts about this? They don't exist because Google surveillance has been normalized. It's ok if Google does it.

<comment><USER70> Google and FB could charge for this in the future, but for now they have to go with the free option. Nobody will switch from Zoom to their offers if it costs the same amount of money.</comment></comment>


The web's 3 biggest cancers, according to Tim Berners-Lee - <AUTHOR> https://www.fastcompany.com/90318541/the-web-3-biggest-cancers-according-to-tim-berners-lee <comment><USER2> Numbers 2 and 3 are inherent to free-market capitalism and/or societies (like the US) where freedom of ideological speech is protected, so they aren't solvable. I was going to write "probably aren't solvable," but I actually don't feel any optimism about it.

2\. _" System design that creates perverse incentives where users' value and wellbeing is sacrificed, such as ad-based revenue models that commercially reward clickbait and the viral spread of misinformation."_

Businesses want views, and the "perverse incentives" are unfortunate consequences of human nature. People respond to emotions, especially outrage, more than reason.

Adblockers _seem_ like they're making a dent, but they're likely making the biggest difference at large, well-funded publishers. Small publishers will continue to throw low-quality content at the web and fill pages with ads. Or, worse, they'll use "native advertising," which is possibly more insidious.

Regardless, there will be a hunger to attract viewers and therefore an irresistible temptation to push people's buttons in an unhealthy way.

The only way I can see this being fixed is fining people for spreading misinformation, and there's no way the US would create or enforce laws like that. That's a huge haven of safety for anyone who wants to publish misinformation.

3\. _" The unintended negative consequences of benevolent design, such as the outraged and polarized tone and quality of online discourse._"

This seems really similar to #2. Maybe he's referring to Twitter? I'm not sure, and I'm not sure I'd call Twitter's design benevolent. They're beholden to investors to grow their readership.

Either way, loud minorities tend to drown out moderates, and there's nothing you can do about that on a free-to-publish platform.

I don't even believe this is an issue inherent to the web. It is, again, just the tendency for organizations (commercial, political, national, and otherwise) to push people's buttons to get them to pay attention.</comment>


Why the browser? - <AUTHOR> http://discuss.joelonsoftware.com/default.asp?biz.5.840407.36

<comment><USER2> I'm so tired of this discussion. Not when it's asked with sincerity but rather when it's asked and then every answer that's contrary to the questioner's preconceived notion is lambasted.

Of course, it can be any question, but if you want to actually learn something (or understand my position) then the important skills are listening, followed by perhaps integrating my experiences with your own. If you don't actually want to learn something, please persist in your ignorance quietly OR teach me something through your counter-point.

<comment><AUTHOR> so true. Why can't people open their eyes and realize the living web around them :)

</comment></comment><comment><USER3> I feel like I have travelled back to 1995</comment>


Ask HN: If you could pick 3 skills to get instantly good at, what would they be? - <AUTHOR> <comment><USER2> Getting good at skills fast would be my first pick.

</comment><comment><USER3> "If you can only be good at one thing, be good at lying. Because if you're good at lying, you're good at _everything_." -gselevator

</comment><comment><USER4> Small talk, languages and tolerance of annoying people.

</comment><comment><USER5> Persuasion. Relationship building. Stock picking.

</comment><comment><USER6> learning, working hard, good planning</comment>


UEFI and Secure Boot: The Hell I Went Through - <AUTHOR> http://prismdragon.wordpress.com/2012/08/16/uefi-and-secure-boot/

<comment><USER2> > I didn't need anything for gaming, just a workstation, so I picked out a > cheap HP pavilion slimline (mistake 2) and a $100 Acer monitor

If you need a workstation, more specifically a linux workstation, maybe you should have bought a workstation. Like HP z-series which support (and some models even ship with) Linux.

> I did a first boot, and had an error come up that it couldn't boot to > Windows. "Well… Recovery media time!"

What error? If even first boot fails, I'd suspect hardware fault, which would make the whole post moot. Instead of trying to force Fedora on a machine that doesn't boot in the first place, more sensible solution would be to return the machine to the store.

> "Feature Byte" The system was using Secure Boot

False conclusion. Idk what "Feature Byte" stuff is, but it seems completely unrelated to UEFI and SecureBoot. Quick googling even reveals that some HP BIOS have Feature Bytes too.

> Yes, I'm aware that OEMs are supposed to give an option to turn it off, but > when has this ever happened?

Is there actually any SecureBoot enabled systems out there which do not allow disabling SB?

> All this said, I refuse to support UEFI until some real standards are put > into place and enforced. I'll take something like OpenBIOS, but NOT UEFI

The UEFI standard is clearly at fault here, right? And the Windows Logo program is exactly about laying out standards and enforcing them. I'd also note that UEFI and the MS stuff are independent entities. UEFI is an industry standard, and predates all this secure boot fuss by years.

This blog post is full of plain old FUD, and it's sad that open source advocates spread such stuff. Especially in matters of such importance imho posts like this only cloud the real issues and erodes the credibility of FOSS camp.

</comment><comment><USER3> I have been through similar hell with UEFI. Problem with building your own stuff is that you can't easily build tablets or laptops. Only OEMs do that. Since mobile is on the increase, so too is the prevalence of OEM stuff (macs, tablets, phones etc). On top of this, people are being forced into the cloud on what basically amounts to disposable computers (Android tablets/Kindle) by companies like google and amazon. Thus, it seems likely to me that DIY systems are on the way out, as is the support and development for that kind of stuff. Even gamers, who have long been a bastion of the DIY system market have cloud options now (onlive/gametap).

It doesn't bode well for the future. Maybe there will be some kind of online cataclysm that will end this madness. Who knows? In the meantime, check that your motherboard has legacy boot options. Or just don't upgrade to Windows 8 and vote with your wallet

</comment><comment><USER4> In general, if the OS pre-installed on your computer doesn't boot nothing else will either. No Linux distribution can fix your broken computer and blaming your problems on BIOS, UEFI or Secure Boot just to get attention won't fix things either.

Secure Boot, when enabled, will not let you boot anything that isn't signed, including removable media. Fedora 17 isn't signed so SB wasn't enabled.

Expecting GRUB2 to work when your Windows bootloader didn't work isn't logical.

Like it or not PC's are designed for Windows. If Windows doesn't work on it, take it back. Very likely the harddrive had problems, this would explain it not booting and the install running slow as it retried when getting errors from the drive.

</comment><comment><USER5> By far the worst thing about RMS is that his far-fetched, nightmarish scenarios have the tendency to become reality in a few years.

<comment><USER6> This is the one reason why I will always continue to take RMS very seriously, no matter how annoying he gets.

Also, since he is not just a prophet of doom but has spend a major part of his life trying to turn the tide, creating and inspiring stuff most of us have profited from, he deserves a hell of a lot more respect than he usually gets.

</comment></comment><comment><USER7> He buys a machine, takes it home, and it won't boot => Take it back and get an immediate refund.

<comment><USER8> But you could not complain on your blog then!

</comment></comment><comment><USER9> Secure boot would have prevented the system booting from the unsigned CD. Whatever the problem is here, it's nothing to do with secure boot.

</comment><comment><USER10> I wonder how Apple is going to deal with this Windows 8/UEFI situation w.r.t Boot Camp. If they totally ditched Windows 8 support it would spell at least a little bit of (well deserved, IMHO) trouble for Microsoft.

This really is getting out of hand Microsoft - this stupidity that Secure Boot is - it isn't solving any real problem for the user. It is only creating nuisance.

<comment><USER11> Why is this utter shocking nonsense being voted up? Windows 8 boots and installs on systems without UEFI. Does OSX?

<comment><USER12> Yeah it's definitely rageworthy when that happens.

</comment></comment></comment><comment><USER13> > Yes, I'm aware that OEMs are supposed to give an option to turn it off, but > when has this ever happened?

Not "supposed to". They must. Why would OEMs waste their time implementing Secure Boot for the logo program, and then disqualify themselves by hiding the option to disable it?

<comment><USER14> The ramp-up to Windows 8 has shown more FUD from the community than Microsoft would ever be capable of even with an unlimited marketing budget. This argument gets thrown around in every W8 conversation, "you won't be able to turn off secure boot!" The more it gets repeated, the more it might as well be true because people are going to believe it.

I just ranted about this happening in the Apple community; don't think it doesn't happen everywhere [1]. It's toxic, and I really wish there was more critical thinking going on.

[1] <https://news.ycombinator.com/item?id=4377064>

<comment><USER15> Microsoft requires that Secure Boot can be disabled by the user, but only on x86. On ARM, the exact opposite is true: Microsoft requires that Secure Boot _cannot_ be disabled by the user.

For now, this doesn't really matter, but the situation may change if/when Windows on ARM becomes a serious platform.

<comment><USER14> _Microsoft requires that Secure Boot can be disabled by the user, but only on x86. On ARM, the exact opposite is true: Microsoft requires that Secure Boot cannot be disabled by the user._

Yet it's completely accepted on the market leader's products. Funny how that works.

<comment><USER15> Plenty of people have voiced objection to the lockdown of mobile devices by other vendors.

The reason for this particular fooferaw, I think, is the misconception that this will apply to x86.

It was my goal to clear that up, not to specifically endorse Microsoft- bashing.

</comment></comment></comment></comment></comment><comment><USER16> "I didn't need anything for gaming, just a workstation, so I picked out a cheap HP pavilion slimline (mistake 2) and a $100 Acer monitor."

Market opportunity for people who assemble Linux capable PCs?

Market opportunity for people selling reliable slightly older technology laptops? Plenty of sellers on UK ebay (their laptops are ex-corporate so a bit too old for here I suppose)

[http://www.h-online.com/open/news/item/Fedora-18-to- support-...](http://www.h-online.com/open/news/item/Fedora-18-to-support-UEFI- Secure-Boot-1651014.html)

Opportunity for followup post trying a beta/testing install of Fedora 18?

</comment><comment><USER17> I feel the trucks heading for the landfills with a tsunami of e-waste thanks to "secure boot" like a tremor in the force.

</comment><comment><USER18> My solution: not bother to buying any machine with secure boot.

</comment><comment><USER19> Secure Boot is probably one of the lamest systems in place. It's clearly a move by Microsoft to try to further their monopoly, and stifle migration to other systems. That's why you should only buy laptops from <https://www.system76.com/>, or <http://zareason.com/>, or <http://www.emperorlinux.com/>. You wouldn't have to deal with Microsoft's BS, and you would get a pretty kickass computer in the process.

<comment><USER20> So to further their monopoly, they are REQUIRING PC OEMs to let you turn Secure Boot and add your own signing keys, and they are subsidizing the cost of signing for other operating system vendors who would like to use Microsoft's key instead of provide their own?

</comment></comment><comment><USER21> I am glad I build all my own desktops. Too bad I can't do the same for my laptop.

</comment><comment><USER22> I see 20 comments saying this is wrong; instead of endlessly rehashing let's flag this and get it off the front page.

</comment><comment><USER23> I built my latest PC on a mobo with UEFI and had 0 trouble at all with Mint.

FWIW.</comment>


Mathematicians Predict the Future With Data From the Past - <AUTHOR> http://www.wired.com/wiredenterprise/2013/04/cliodynamics-peter-turchin/2/

<comment><USER2> Well, they have been doing it for 4-5 millenniums already.</comment>


What's up with the mysterious inc bp in prologues of 16-bit code? (2011) - <AUTHOR> https://blogs.msdn.microsoft.com/oldnewthing/20110316-00/?p=11203/ <comment><AUTHOR> I stumbled across this while searching for something very similar, and found it very interesting that 16-bit Windows was, while most known for being cooperatively multitasked, also had what could be called _cooperative virtual memory_.

<comment><USER2> Please elaborate?

<comment><USER3> It's in the article. Windows could unload code segments that weren't running to free space for other purposes. But those functions might be on a process call stack. So it used the otherwise irrelevant low bit of the BP register to store whether a frame was a near or far call, thus allowing the unload code to fix up the return address to allow for reloading on demand.

<comment><USER2> So if I get this right: the stack is limited in size, and certain "frequent use" routines were labeled as "near" while others with less frequent use were labeled as "far" and there was a dynamic way to keep frequent ones in memory?

<comment><USER3> It's a 16 bit architecture. Any code that doesn't fit in 64k needs to be in a separate segment. In practice, the way typical C compilers managed this (there were a bunch of code generation options) was to put all the code in a single C/obj file into a separate segment. Calls within the segment were "near" and used the simple CALL/RET variants which took and pushed a 16 bit address. Others were "far" and called/returned to a tuple of an address and a segment descriptor.

</comment></comment></comment></comment></comment><comment><USER4> God I'm glad that era is over.

</comment><comment><USER5> From 2011

<comment><USER6> The author's book, Old New Thing, is worth a read, even though it was written years ago.

</comment></comment><comment><USER7> The incredible ingenuity of those old-skool engineers. Can you imagine modern- day TDD nodejs "ninjas" trying to solve this problem under these conditions?

<comment><USER8> I think the better engineers use the MC68000 in their designs and had nothing to do with this nonsense. I started reading TFA and stopped as soon as I realized it was about a crummy abstraction that should never have happened.

<comment><USER9> There's a saying that anybody can design a bridge that will withstand a load, but it takes an engineer to design a bridge that will just _barely_ withstand a load.

In other words, limiting resource usage and cost is the whole point of the game. Yes, you can solve it by throwing a fancy expensive CPU at it, but that's not necessarily good engineering.

<comment><USER10> There's also a saying that if a bridge cracks 1/3 of the way through, that is not a safety factor of 3.</comment></comment></comment></comment>


Who really invented the internet? - <AUTHOR> http://online.wsj.com/article/SB10000872396390444464304577539063008406518.html

<comment><USER2> This is a strange and pretty sloppy article. For example:

 _If the government didn't invent the Internet, who did? Vinton Cerf developed the TCP/IP protocol, the Internet's backbone, and Tim Berners-Lee gets credit for hyperlinks._

How is that a counterexample? Those are two examples of the government inventing key parts of the internet! Tim Berners-Lee worked for CERN, and Vinton Cerf worked for DARPA (and during some of the time at UCLA and Stanford... pursuant to DARPA grants).

Plenty of other problems, such as attempting to minimize the role of ARPANet, which is just absurd. I'd nominate the following article as a better starting point, and chalk the WSJ op-ed up to election-year silliness: <http://en.wikipedia.org/wiki/History_of_the_Internet>

<comment><USER3> It's weird how some seem to grasp "government" as some golem made of paper and red tape, and not humans. Or as if anything not done by an elected official is not government.

</comment></comment><comment><USER4> The only accurate statement in this article is that the government resisted commercial use of the the internet for a long time.

The rest it total garbage, written by someone who denies _facts_ to promote an agenda. This is what is really sad. I mean, come on, the government (primarily DOD) _of course_ spearheaded ARPANET, NSFNET, etc. which morphed into the internet we know of today. It's indisputable - _funding_ poured into universities, and into private contractors (like BB&N) to work on this. Even Silicon Valley itself, it can be argued, wouldn't be here if it weren't for the government in the early days.

This is not to say that the government is wonderful, or that it is good, or should be larger in our lives, or anything like that - but, a FACT is a FACT. These birthers and creationists and other deniers just make up things to fit their models. To me, that is incredibly dangerous.

And note that the guy who wrote this article has "impressive" credentials - Yale, law school, Rhodes Scholar. But he doesn't _have a clue_ about how modern technology works! (equating Xerox's Ethernet with the "internet", for example). This is pathetic, and pathetic that the "venerated" Wall Street Journal would publish this nonsense.

</comment><comment><USER5> What a misinformed article! the passage easiest to shoot down is where the author shows that he thinks "the Ethernet" was some sort of network of networks:

>the Ethernet was developed to link different computer networks.

Does anyone know what aspect of Ethernet the author might be misinterpreting here?

</comment><comment><USER6> The first paragraph explains the context of the article:

A telling moment in the presidential race came recently when Barack Obama said: "If you've got a business, you didn't build that. Somebody else made that happen." He justified elevating bureaucrats over entrepreneurs by referring to bridges and roads, adding: "The Internet didn't get invented on its own. Government research created the Internet so that all companies could make money off the Internet."

This seems designed to discredit Obama's claim that the government performs useful functions. The WSJ was acquired by Rupert Murdoch a few years ago (Fox News). Since then, the editorial page has been politicized.

<comment><USER2> > Since then, the editorial page has been politicized

The editorial page has been politicized for a long time; I'm not sure that particular issue can be blamed on Murdoch. In the '80s it was a huge supply- side economics and Reagan cheerleader.

</comment></comment><comment><USER7> Par for the course for the opinion/editorial pages of the WSJ. If they are this sloppy and dishonest on subjects one knows about, how can they be trusted on any subject.</comment>


Introduction to Object Oriented Programming in Python - <AUTHOR> https://stackabuse.com/introduction-to-object-oriented-programming-in-python/ <comment><USER2> > Object-Oriented Programming (OOP) is a programming paradigm where different > components of a computer program are modeled after real-world objects.

This is a common, but dangerous way to introduce the object-oriented paradigm. While it is true that many object-oriented systems end up having a few classes that represent entities of its problem domain (such as, perhaps, bus stations in a public transport app), most of them do not. These other classes are abstract entities like data repositories, factories, controllers etc. that are meant to split software into understandable pieces with clear responsibilities that work together to make things happen.

The point is that this collaboration happens solely by these pieces sending each other messages (calling methods) that describe their intent, without needing to know how exactly the message is being processed. This style of communication is the key characteristic of object orientation, and even an introduction should probably put their focus on this aspect rather than "modeling the real world", which isn't really something that is done this way in practice.

All this being said, I do see the appeal of the real-world rhetoric in that it seems much more approachable than ralking about little communicating abstract things. I wonder how to balance this.

<comment><USER3> I believe it _started_ as a way to model real-world object. Simula was designed for simulations. But OO turned out to be useful for much more. The simulation use case mostly live on in tutorial and examples, spreading confusion to beginners.

But I also think the "message passing" metaphor has outlived its usefulness the same way. A caller does not need to know how the callee is implemented. Sure, but this is the same in any language with functions/procedure, this is not something specific for OO. The idea of message passing is a bit deeper, for example that the client does not even know it is calling a method. It sends a message, and the object answers, even if it is just by throwing an error that the message is not supported. This is how Smalltalk and (I think) Ruby works, but not at all how a statically types language like C# works. And it is not how Python works either. In Python you obtain a method reference from an object and then invoke it. So if you apply the message passing metaphor, your are actually passing the message to the _method_ rather than the object itself. Which I think is just a confusing way to describe a method call.

</comment></comment><comment><USER4> When I write Python it's exclusively without OOP. It's totally possible to write Python in a solely functional manner. You make heavy use of NamedTuple, Enum, itertools, functools, and mypy annotations.

I can approach writing Python essentially the same way I'd write Haskell using the above strategy. I think it looks really nice.

I've turned a few people away from the dark path of OOP by writing in this style as well. They're usually turned when they see how easy it is to test just regular functions with no need for magic mocks and the like.

<comment><USER5> Why not just use Haskell? Python has OOP baked into the language. Also, your responding to an article on introducing OOP with how not to use OOP, which seems tangental and deserving of it's own thread.

<comment><USER6> +1. When GP leaves a job and a "Python Programmer" is hired to replace him/her, their life will be hell. At that point one can only hope that GPs next gig is at a Haskell shop where every single function returns an IO action :)

<comment><USER4> In my experience what matters is the quality of the code regardless of the paradigm used. A well written piece of functional Python with comments and documentation will be much easier to understand than poorly written OOP.

FP is also quite idiomatic. Pythons list comprehensions are quite powerful, and the libraries I mentioned in my previous comment are all part of the standard library. There are third party libraries that attempt to make Python even more functional.

<comment><USER3> Well written code is obviously better than badly written code. But why assume the functional-style is better written than the idiomatic Python? I think a good developer understand the context they work in rather than try to fit a square peg in a round hole.

I wouldn't like to maintain Haskell code written by someone who thinks everything should look like Python. And vice-versa.

<comment><USER4> > square peg in a round hole

Python is a multi-paradigm language. I have not found Python to be better at OOP versus imperative or functional styles of programming.

For me, functional programming provides a closer to model to how I think about problems. This is true for many people. One should choose the style that provides the easiest translation of thought to code.

<comment><USER3> If you only write code which you yourself will read and maintain, then you should definitely do whatever you feel works best for you and matches your way of thinking.

</comment></comment></comment></comment></comment></comment></comment><comment><USER7> Can you guys please share tutorials you like for getting started with functional programming in Python?</comment>


Show HN: HuggyList: A micro-blogging site in list format (now public) - <AUTHOR> https://huggylist.com/ <comment><AUTHOR> Hello!

Excited to share the public version of HuggyList, a faster alternative to blogging.

I believe blogging is the best solution to share deep content but it is very time consuming and restricted to people with good writing skills.

Now, you can discover and share content in simple bullet points on HuggyList.

How it works: 1) Start a list 2) Decide whether the list is public or not (who can add items?) 3) Add bullet points (or items) as you go

Looking forward to your feedback!

</comment><comment><USER2> This is pretty neat. Thanks for sharing. There's a few inconsistencies with your layout. On desktop, it (mostly) forces phone view, but when I went to add my list, for instance, the submit button stretched my entire window.

<comment><AUTHOR> Yes I focused only on mobile so far. Will have to adjust the submit button. Desktop will come pretty soon.

Did you enjoy going through the content? I was thinking about producing much more so you can learn some exciting stuff without reading lengthly posts.

<comment><USER2> Yes? Very few posts actually contain more information than the little blurb... which makes it feel more like a curated Twitter hashtag than an actual blog, but that's not on you. That will come from people using it.

The similarity between the layout and twitter made a few things confusing: I tried clicking on a username to go to that user's profile and was instead directed to the list. This behavior is fine, but I think because the UI is so familiar, I wanted it to behave in a familiar way.

<comment><AUTHOR> Good point, I should definitely adjust the UI so it feels familiar.

My goal is to keep the posts as lists of bullet points (keep it short). Too much text would not solve the problem of not having enough time to digest content. I was even thinking of limiting the number of characters like Twitter did.

Is it even different than Twitter? Yes, the content is structured and evergreen knowledge. What are your thoughts?

<comment><USER2> The content - right now - is structured and evergreen. If you suddenly attract a few thousand users, do you think you can maintain that? Do you expect to be able to curate all the posts? There doesn't seem to be any requirement for me to make a list be an actual list. I can make a single-bullet list and move on, so what prevents this from being just another link-sharing service like Tumblr?

These are all questions I'd be asking myself if this was my project. I like the concept and the layout is strong.

<comment><AUTHOR> This is very true. That's literally what happened with the first users.. I decided to do some adjustments. I am happy to share my thoughts with you, let me know what you think:

1) Knowledge will be published from authorized channels only. Random users will no longer appear. 2) The YC Library is an example of channel I created. There will be more of those. I will curate all the posts until we have more traction 3) I am thinking of making channels subscription based. This would motivtate qualified people to build strong channels with good ratings.

BTW, thx for giving me so much feedback!

</comment></comment></comment></comment></comment></comment><comment><USER2> I can click on other people's bios to open the edit dialog. I shouldn't be able to do that, even if my edit does nothing. :-)

<comment><AUTHOR> Wow, thanks!! That's an issue. Will fix that asap.</comment></comment>


The Trippy, High-Speed World of Drone Racing - <AUTHOR> https://www.newyorker.com/magazine/2018/02/05/the-trippy-high-speed-world-of-drone-racing <comment><USER2> I design and build my own quads, though I'm not a particularly great flier. The thing I love about the hobby is that it combines three key things:

* The control joy/mastery feeling you get from activities like car racing, riding a bike on technical terrain, playing a game, or flying a plane[1].

* A sufficient risk/reward profile; you risk smashing a $100 device, which is expensive enough to be interesting, but low enough not to be paralyzing

* The gearhead thrill of ordering, rebuilding, designing, and discovering new combinations of equipment

In my case, I want to optimize for quietness and unobtrusiveness, which means aiming for lightness, which is its own set of fun design problems - I'm currently down to 25 grams for a brushless FPV setup[2]. Now I'm on to redesigning the RC transmitter[3], since I want one with nice gimbals that takes up as little space in my bag as possible. The set of things you can do is endless.

[1] I hooked up an RC controller and went FPV with my home flightsim setup. It was fun, but there's a reason RC sticks are tiny - you need to move them around a lot more frequently and quickly than in a plane: [https://twitter.com/gmurphy/status/832698732361551872](https://twitter.com/gmurphy/status/832698732361551872)

[2] [https://www.instagram.com/p/BaSymwPH7XJ/](https://www.instagram.com/p/BaSymwPH7XJ/)

[3] [https://www.instagram.com/p/BdnapxGltfw/](https://www.instagram.com/p/BdnapxGltfw/)

<comment><USER3> Nice clean build, what frame is that?

Just bought a pair of fly egg 100's frames (not kits) for a tiny build but I was planning on deleting the "cage".

The FrSky TX is quite a project too, very interesting. You got a write up or project page somewhere?

<comment><USER2> It's a 2g frame and camera mount I designed - you can download the plans here (the button next to the QTY selector): [https://armattanproductions.com/pages/product_details/12158](https://armattanproductions.com/pages/product_details/12158)

The TX is a Jumper T8SG + FrSky M9 gimbals and recased into a 3D printed case I made. Haven't finished it yet (waiting on a third iteration to be printed), so writeup when I'm done :)

</comment></comment></comment><comment><USER4> "Maybe someday we'll all be flying in commercial airplanes directed by calm, professional, reassuring pilots who are sitting on the ground."

Color me old-fashioned, but I like it when my pilot has some skin in the game.

</comment><comment> semi-extrinsic I recently saw a very interesting CFD study by NASA recently on drone configurations, where they found that a hybrid version with front rotors below the frame and rear rotors above was significantly faster, since the wakes interact less. Wonder if it's been tried on racing drones?

[https://www.nas.nasa.gov/publications/articles/feature_hybri...](https://www.nas.nasa.gov/publications/articles/feature_hybrid_UAVs_VenturaDiaz.html)

(The flow simulation and visualization in the above link is so insanely high resolution it's borderline pornographic.)

<comment><USER5> I'm not completely sure whether this is as relevant for racing drones as it is for surveillance/video drones. Racing drones often fly at a 45+ degree angle, so the thrust is angled more backwards than downwards. Also, one of the benefits of the NASA research is longer flights. But racers often don't fly more than 1-2 minutes, after which they swap batteries. A slightly lighter battery could give the benefit of slightly quicker acceleration though and that's pretty important. Lastly, in the pro leagues, they usually fly the same drone, so there's no need to have the fastest drone.

</comment></comment><comment><USER6> Drone racing was on like ESPN 8 one day and it was very interesting to watch. Honestly if E-Sprots/Nascar have a following this should as well.

<comment><USER7> I can't tell if this is serious. Do we really have "the ocho" now?

<comment><USER8> ESPN: College was taken over for a single day as "The Ocho" last year:

[https://www.sbnation.com/lookit/2017/8/3/16091446/espn8-the-...](https://www.sbnation.com/lookit/2017/8/3/16091446/espn8-the- ocho-real-tv-channel)

[https://www.youtube.com/watch?v=jow5hZPF3zY](https://www.youtube.com/watch?v=jow5hZPF3zY)

</comment></comment></comment><comment><USER9> love this quote "An immeasurable amount of scientific and technological progress, like a huge invisible inverted pyramid, converges on this small, toylike point. "

<comment><USER10> A friend of mine in the drone racing/stunt hobby said something to me the other day that really blew me away, "the real improvement in drones in the last 2 years isn't batteries, it's that the output of the motors has increased so much that we've all dropped a frame size and kept the same output." He then said that it might happen again soon.

I don't know if that means that the real output of the motor is truly increasing that fast, or the effective output taking into consideration the reduced weight, but those little motors putting out a ton of power, very efficiently.

The combo of brushless DC motors and lithium batteries more or less revolutionizes everything it touches.

<comment><USER11> Max output of a motor is constrained by weight, or more specifically, its ability to dissipate heat. Racing quads generally use 30-40 gram motors. The top racing motors these days produce 1.6kg of thrust at max output and consume 40 amps of power in the process. It's not difficult to produce a quad under 500 grams.

4 motors would produce 6.4kg of total thrust for a 500 gram quad for a nearly 12.8:1 thrust/weight ratio at a 160 amp current draw. A few years ago a 4:1 thrust/weight ratio was considered pretty good.

160 amps might be a stretch, but it's not uncommon to get >100A out of a 1300mah battery.

All that is pretty crazy, but I think the more interesting bits are in the open source efforts around flight controllers and speed controllers.

<comment><USER12> With those kinds of currents, it'll be interesting to see if point of load DC- DC converters become integrated into the motors themselves so as to reduce the wiring requirements for distributing the power to the motors. The batteries will need to stack more cells in series to support this but I wonder at what currents the wire gauge, and hence weight of the wires, become a big concern.

Maybe modern quads already do this?

<comment><USER11> Wire runs are so short and peak current is so brief that it effectively doesn't matter.

Most folks run 14AWG between the battery and the power distribution board. PDBs are generally made with 2oz copper and wide traces to accommodate the current, from there, the total current load is divided by 4, assuming that's how many motors or running.

<comment><USER13> > Wire runs are so short

This! The length of wire makes a huge difference in rated capacity.

</comment></comment></comment></comment></comment></comment><comment><USER14> The embedded video is well worth of watching! Trippy indeed.</comment>


Eight Week Semesters (2017) - <AUTHOR> https://www.insidehighered.com/blogs/confessions-community-college-dean/8-week-semesters <comment><USER2> Victoria University in Australia has moved to a block model, where students do 1 course at a time, in 4 weeks. Sit the exam/assessment and then move onto the next. They do 8 courses a year (Standard Full time Australian study load)

</comment><comment><USER3> Quarters instead of semesters have been done to great success: [https://www.wpi.edu/sites/default/files/2019/03/21/UG_2019-2...](https://www.wpi.edu/sites/default/files/2019/03/21/UG_2019-20.pdf)

<comment><USER4> All of the University of California schools (except for Berkeley and Merced) are on the quarter system. I really liked the quarter system. It really felt like professors couldn't waste your time with busy work activities. Everything was very focused.

<comment><USER5> UC Berkeley switched from quarters to semesters in 1983 ( [https://dailybruin.com/2018/06/08/the-quad-the-long- convolut...](https://dailybruin.com/2018/06/08/the-quad-the-long-convoluted- history-that-entrenches-the-quarter-system-at-ucla/) ). At the time I thought it was because spring quarter is over later than spring semester (because of Christmas and New Year) and students from quarter-schools had a hard time finding summer jobs because the semester students had already taken all the jobs.

<comment><USER6> I went to school at a Canadian university with a 4 month summer break at the end of the winter semester: just as temperatures were warming up, it would last long enough to earn tuition, rent and food for the following school year.

</comment></comment></comment></comment><comment><USER7> This is a fun idea. It's well known that the reasoning for summer vacations was to allow the student to help out on a family farm, and yet most students (especially at younger ages) waste this time. At least in college students take internships, but it would be interesting to promote more co-ops or adjusting the schedule of coursework.</comment>


There are over 100k firebase authentication files on public GitHub repos - <AUTHOR> Exibit A: https://github.com/search?q=filename%3Agoogle-services.json&type=Code<p>also amusing: https://github.com/search?q=%22delete+google-services.json%22&type=Commits <comment><USER2> Embedding Firebase and running client-side operations is the concept of Firebase itself, you create an API key for your app and put it in google- services.json. It's a public+non-secret file.

<comment><AUTHOR> Yes you're right, I was under the impression those were more confidential. Still, having 100k firestore url's can't be good, given how hard is is to correctly secure firestore. Also using similar queries, you can try looking for the definitely-not-public serviceAccountKey.json

</comment></comment><comment><USER3> This literally comes with every website using Firebase with the configuration in the Javascript, what's you point?

<comment><AUTHOR> Take there 800 admin service account keys instead

[https://github.com/search?q=filename%3AserviceAccountKey.jso...](https://github.com/search?q=filename%3AserviceAccountKey.json)

<comment><USER3> Yep, this is bad though.

</comment></comment></comment><comment><USER4> It's hard to avoid. My project has a firebaseConfig.js.sample file committed as a reminder to the deployer, they need to create their own. And I put firebaseConfig.js into .gitignore in case a developer is careless.

</comment><comment><USER5> exposed .env files. First result, lol [https://github.com/DennisIrimu/instagram/blob/d49ea53281904c...](https://github.com/DennisIrimu/instagram/blob/d49ea53281904c477afe37b0c5321ecb5f087576/.env)

<comment><USER6> I'd love to try it out but don't want to get in trouble!</comment></comment>


Chaining vs. Nesting - <AUTHOR> http://frankschmitt.org/2010/01/chaining-v-nesting <comment><USER2> Function composition and currying seem like a more natural translation to me.

Or you can think of it like this:

netstat_n >>= grep "tcp" >>= flip awk 5 >>= sort >>= uniq_c >>= sort_n

See also: <http://okmij.org/ftp/Computation/monadic-shell.html>

<comment><USER3> Glad someone posted that link, or I was going to :)

Pipes and method chaining "feel" the same. They're both _expressions_ , but with the property that you could rewrite them as what looks like a series of _statements_ without changing the semantics (although possibly changing the efficiency). e.g.

        usual_suspects.director.surname

has the same value ("Singer") as

        person = usual_suspects.director
        surname = person.surname
        surname

and

        cat /etc/passwd | grep root | cut -d: -f6

outputs the same thing (root's home directory) as

       cat /etc/passwd > tmp1
       grep root tmp1 > tmp2
       cut -d: -f6 tmp2 > tmp3
       cat tmp3

They feel the same because they're both monadic (at least when the chained methods or piped processes behave in certain 'normal' ways). '.' (the method invocation operator) and '|' (the pipe operator) are monadic combinators, just like Haskell's >>= and F#'s |>. And a monadic combinator is just a generalisation of function composition.

Monads are going to become a lot more important in the next few years, as programming languages get more expressive and capable of more abstraction. LINQ in C# and VB is a great example - while it looks like they've baked in language support for lots of concepts (querying databases and XML, for data parallelism and for event-driven programming), what they've really done is recognised that those are all forms of monadic computation, baked in language support for _one_ thing (monadic expressions), then implemented those concepts as _libraries_ that any user could have written. (Erik Meijer and Brian Beckman on MS's Channel 9 explain this really nicely.)

</comment></comment><comment><USER4> Here's the example from the article written using the Clojure thread macro:

(-> netstat_n (grep "tcp") (awk 5) sort uniq_c sort_n print)

</comment><comment><USER5> I remember first running into this point with <http://xahlee.org/UnixResource_dir/writ/notations.html> and I'm sure Slava or somebody has pointed out that in postfix languages like Factor and Forth everything is essentially chained which very naturally leads to a function composition style. And that despite the "reverse" nature of RPN it often ends up being "forward", witness in Factor REPL actually being REPL instead of L(P(E(R))).

</comment><comment><USER6> I've seen an interesting way to do method chaining in haskell: The '$' operator: Basically it's a low-priority right-associative binary operator that applies the function to the left to everything to the right.

Using the example from the article, one could do it as:

sort -n $ uniq -n $ sort $ awk '{ print $5}' $ grep tcp $ netstat -n

I.e essentially the same but in reverse order.

<comment><USER7> ($) helps to avoid some parens. The (.) is more common to change functions, and closely related. ($) does not really compose functions, it is function application and right associative.

Your example would rather read something close to

      sort -n . uniq -n . sort . awk '{ print $5}' . grep tcp . netstat -n

(And `$ argument' at the end, if there was one.)

<comment><USER3> ($) is actually the least interesting operator in the world :) But as you say, its parsing precedence makes it useful (because it lets you skip parens).

What I like is how ($) generalises to (<$>) for applicative functors, so you can write

       succ $ 5                -- -> 6
       succ <$> Nothing        -- -> Nothing
       succ <$> Just 5         -- -> Just 6
       succ <$> [1, 2, 3]      -- -> [2, 3, 4]

Who needs "for" loops? :)

<comment><USER7> I agree. Though I'd say id or const or even less interesting than ($).

</comment></comment></comment></comment><comment><USER8> I don't think ternary expression is ugly by itself, it's only ugly if parameters themselves are chains beacuse then you're back to having a tree. Which is the fundamental problem - chaining is not good for branches, so any branches send you back to nesting. On the higher level theproblem is that you are trying to express a tree as a list - ain't going to work.

Haskel side-steps this problem in a neat way - you can take advantage of delayed evaluation and give names to both arguments of the ternary expression so each individual piece looks linear. So your "tree" is broken down line by line:

      x=...
      y=...
      z=f?x:y

which is as neat and easy to read as a chain, but is more powerful because it can express a tree.

Once could enforce this sort of reader-friendly style by forbidding expressions in ternary operators.

</comment><comment><USER9> Comparing a model in which the contract is 'everything is a stream of characters' to function application and composition in just about any programming language seems more than a little clueless.

<comment><USER2> _"I think there's a connection. Certainly in the early days of Unix, pipes facilitated function composition on the command line. You could take an input, perform some transformation on it, and then pipe the output into another program. (...) [The mathematical approach of function composition is] exactly what I mean. (...) I think [that mathematical formalism] was right there from the start. Doug McIlroy, at least in my book, deserves the credit for pipes. He thought like a mathematician and I think he had this connection right from the start. I think of the Unix command line as a prototypical functional language."_

\-- from an interview with Alfred Aho, one of the creators of AWK

[http://books.google.com/books?id=yB1WwURwBUQC&lpg=PT120&...](http://books.google.com/books?id=yB1WwURwBUQC&lpg=PT120&ots=-BUH9ErkdB&pg=PT120#v=onepage&q=&f=false)

<comment><USER9> It's 2010, not the 'early days of Unix'. Yes there is a connection, a useful one, if you are sitting in front of a PDP-8.

[http://groups.google.com/group/comp.lang.functional/msg/8476...](http://groups.google.com/group/comp.lang.functional/msg/84763c6d9185178b?dmode=source&hl=en)

<http://regex.info/blog/2006-09-15/247#comment-3085>

<comment><USER10> I don't think unix pipes in the shell would be very useful to someone sitting in front of a PDP-8

The machine's panel switches are enough of a pain when programming in the absolute -- give a shell user a teletype at least!

<comment><USER9> A bit of a hyperbole, granted. Pipes -> any kind of vaguely modern runtime (clojure? srsly?) is a profoundly nonsensical comparison though.

<comment><USER11> I don't understand your hostility to pipes. It seems to be based on the fact that they were invented some time ago? On the contrary, the soundness of an idea famous enough to be known today is probably positively correlated with how old it is.

Pipes are a combination of dataflow programming and monadic computation, and are naturally parallelizable, functional and generally pipe processes don't share mutable state. All these concepts are highly relevant to modern programming.

<comment><USER12> pvg's dislike seems to be that pipes transfer a stream of octets with no inherent syntax or semantics. That means every program needs baroque options to impose structure, which is difficult to create, maintain, and debug. Also brittle.

<comment><USER11> And on the other hand, text streams are easy to work with, because ad-hoc tools can be written to work with them, rather than having to wrestle with strongly typed libraries and being constrained to languages compatible with the libraries that define those types. Imagine a web written using CORBA RPCs over rendering APIs, rather than HTML over HTTP.

You can argue that HTML has inherent syntax and semantics, but of course server and client can have slightly different ideas, and it all still works, mostly. The same is largely true of shell programming using pipes: different stages in the pipe expect certain formats, for regular expression or field extraction, and format pasting together, etc. The format is easy to eyeball and easy to test on the shell REPL, so in practice the problems aren't large.</comment></comment></comment></comment></comment></comment></comment></comment>


The Real Pictures in Gaza - <AUTHOR> http://www.youtube.com/watch?v=TQGLiM3BXqY

<comment><USER2> The problem with videos such as this is that it's hard for the average guy to determine the validity. If they want me to take the video at its face value, possibly provide references so I know the photos were taken in Gaza and also recently.</comment>