Rob Pike: What Golang Got Right & Wrong

preview_player
Показать описание
Recorded live on twitch, GET IN

Become a backend engineer. Its my favorite site

This is also the best way to support me is to support yourself becoming a better backend engineer.

MY MAIN YT CHANNEL: Has well edited engineering videos

Discord

Hey I am sponsored by Turso, an edge database. I think they are pretty neet. Give them a try for free and if you want you can get a decent amount off (the free tier is the best (better than planetscale or any other))
Рекомендации по теме
Комментарии
Автор

Thanks for talking about this talk. Rob is no longer a Go core team member (he's retired now), and explicitly mentions this a few times during the talk, but he sees it as one of his more successful children, and he loves where it's at now. The talk is 100% opinion based content from one of the inventors of the language. It wasn't vetted or approved by anyone from Google, and I don't think he'd conform to anything they would have pushed or suggested for this talk. It's remarkably candid. He also happens to be one of the people who have been around for so long, and invented so much stuff (UTF8 anyone?) that I regard his opinions as worth considering for longer than average.

I had the privilege of being one of the MCs at this conference. I introduced this particular talk, and was running madly around the theater with a mic during Q&A. Rob is a lovely guy, and if you ever have the chance to talk to him he's a fountain of knowledge and stories.

Intermernet
Автор

I love how Flip litereally never does anything Prime asks it's pretty funny.

xslashsdas
Автор

I always felt like the Go gopher looked like a simple, well-meaning idiot implying that the Go language is meant to be a fun, simple tool that does what you tell it to do exactly because it can’t do anything else.

blk
Автор

On the one letter variable name thing, I work with a fork of nginx and the core modules are nightmarish to follow because of this. I dread debugging the upstream module a seeing a pointer called c and not sure if it is a pointer to the connection, cache node, cache module, config or what else. Then you jump into a function call and you have another pointer call c which is something else, and you better remember that when you go up the stack again that c no longer means what it meant before. It hurts me physically.

IvanFernandes
Автор

when i worked in automotive, the project took almost 1 hour to compile from scratch, one Engineer took a couple of months to switch the build system from a collection of make files to cmake+ninja and the new compilation time from scratch was 20 min, we all rejoice.

ernesto
Автор

I like the joke that they wrote Go while waiting for their C to compile.

suede__
Автор

Those single letter variables remind me of when I was first writing code.

"I'll surely, remember what this is for"

davidspagnolo
Автор

I really hoped there would be more about what they did wrong.

rzyr
Автор

One of my professors recounted a story where he interned for an automotive company in detroit, and the mechanical engineers had this software to ensure a component could be manufactured and it took almost 17 hours to complete. He wrote a tool that did the same thing and it only took 6 minutes and the engineers were mad at him

reaganaustin
Автор

The one-letter thing is aka "Rob Code". He comes from a time when screens were monochrome and space was limited. You can find the same fun in Plan 9 and the Limbo language.
And... well... that made it into Go, I suppose.

CyReVolt
Автор

Is there a Part 2 where he talks about the things Golang got wrong?

mike
Автор

The take on Go developer and one letter variables so so true just why 😂

ehh
Автор

"You done messed up Balake!" we're never calling anyone Blake ever again 😂

Wako_san
Автор

From now on, when I need the length of any array-like object, I'll just call it nn. What a good variable name!

TheRandomFool
Автор

1:58 I'm fine with a writer named w. But I draw the line at `nn := len(p)`, that is just horrifying.

ehhhhhhhhhh
Автор

Giving credit to the mascot is crazy; saying it has an intelligent demeanor just sent me.

abigchair
Автор

1:00 As a dev who's comping from the engineering math side of things who has seen a lot of fortran and c code that looks like it's coming from a physics or analysis math book, I disagree that single letter variables are always a bad thing - especially when each of them are confined to clear local scopes & you happen to have to deal with a lot of them at the same time.
if you don't know: using single letter names in math, physics & engineering for local or bounded scoped variables, constants or expression is not just a -decades- centuries old way of writing things, it's also more readable when you get more complicated expression. But granted, the stuff that this go-programmer wrote isn't anywhere near that kind of complexity (nor are most things programmers write).

FrankHarwald
Автор

14:48 - Python does exactly this. At least, as of Python 3. There is no integer overflow in Python. The integer just gets bigger. They smoothly scale the representation under the hood. Of course, in Python, nobody is expecting anything to be blazingly fast and so that works. But I think he's right, and I also think that could be made not ridiculously expensive.

I'm going to think about making an integer type in C++ that can do this. Though, in C++ the performance degradation involved is going to concern many more people. It can probably still be made pretty efficient, and would be really helpful when dealing with data from untrusted sources.

Omnifarious
Автор

As one of the maintainers of Gorilla Websockets, I feel your pain.

jaitaiwan
Автор

How dare you expect self explaining variables, how else will that one goated programmer make sure that no one else but him can decipher his spaghetti code?

maxmustermann-zxyq
join shbcf.ru