9 ms·
Things you didn't know about Python
- andrewcooke 14y agosome context for slide 99? (which says "screw HN")
- lmm 14y agoThere was a recent story here claiming python was in decline, guessing it's that?
- Xion 14y agoHe might be also alluding to recent (~few months) influx of Rails and Node.js related stories.
- timkeller 14y agoIt was a tongue-in-cheek reference to the recent discussions on HN about Python being in decline.
- zalew 14y agoon HN every technology older than a week who isn't posted by very vocal 19 year old fans at least 4 times per day is 'dying'.
- ElliotH 14y agoCan we please try and avoid the casual ageism? I'm 20 and I don't recognise my 19 year old self in that description. Further I know many people of all sorts of ages who switch to the latest 'cool' technology at the first opportunity.
- opiumden 14y agoThe poster didn't say "every 19 year old is a vocal fan boy who posts 4 times a day" The poster said that there are some 19 year olds who are very vocal about their fanaticism and who post 4 times a day. It's not ageism because it's not generalized to an entire group of people. So if you don't recognize yourself in the comment, it's not aimed at you. Stop being hyper-defensive.
- 0x006A 14y agoTo imply being 19 or age in general has anything to do with being vocal or a fan is agism. What makes zalew believe those posts where made by 19 year olds? Last time I checked, HN did not require age verification or disclosed such information about its members.
- opiumden 14y agoWe're quickly approaching that insane point in this discussion where we're now forensically dissecting what appears, to me at least, to be a throwaway comment by zalew. If zalew meant the comment to be a deep critique about the intersection between age and vocal fan boy-ism then I've missed that. I don't see the comment as ageism. I see the comment as constructing a strawman in order to point out that the more vocal proponents a new technology has, the more attention and interest it can draw on a site like hackernews. It's a subset of the problem that on the internet, in front of an anonymous audience, points of view (or arguments) that are forcefully presented and appear to be logically consistent can often beat out points of view (or arguments) that are less well reasoned and less forcefully presented, even if they are more factually correct. Thus 'python is dying' becomes a thing because it doesn't have the same level of noise surrounding it as other technologies. The lack of noise doesn't mean python is dying, it means python is less noisy (whatever that actually means). But to get back to the point I was trying to make. The comment doesn't really say anything about being 19. Sure attach an 'immature' or a 'lacks experience' and now we're trending towards stereotypes that could imply ageism. Same as if zalew had said "a 56 year old condescending, out of touch, past their prime, vocal grandfather of two, great grandfather of 6, fan boy." But simply sticking 19 next to some other words doesn't automatically imply ageism. And anyway I was reacting to ElliotH's need to defend himself from the characterization made in the strawman argument. If you want to go around fighting all things ageism that's your right and you're welcome to do it. But to spend time fighting strawmen, well, that seems a bit ridiculous. Although, at this point no more ridiculous than the amount of time and effort I've put into this reply. So I guess we're all suffering from the same thing this morning. Must be something in the company coffee.
- dmorgan 14y ago>To imply being 19 or age in general has anything to do with being vocal or a fan is agism. It's also true. >What makes zalew believe those posts where made by 19 year olds? Last time I checked, HN did not require age verification or disclosed such information about its members. Most of the pages linked touting new technologies have an "about" page or a bio of the author. Also, older devs have enough years of experience with other people --on the job, on the web, on conferences etc--, to know that it's mostly young developers that go crazy over such things.
- kriro 14y agoExcept Lisp...that's what hackers use or something :P
- timkeller 14y agoSaw the talk in-person at Pycon South Africa this morning. Excellent presentation - thanks Armin.
- krat0sprakhar 14y agoIs there a video of this talk somewhere?
- simondlr 14y agoThe talks are being recorded. They should be online later. Great talk from Armin!
- arantius 14y agoBest I can find is https://www.youtube.com/watch?v=Ug8jBO6QMaY https://www.youtube.com/watch?v=Ug8jBO6QMaY which has the audio (low quality w/ buzzing noise), but video is just a blank green screen the whole time.
- valugi 14y agowtf way to start by trolling PHP?
- cobychapple 14y agoBest slide for me was "worry less & get stuff done". Good advice.
- tripzilch 14y agoIt looks very interesting, but I feel I'm missing half by seeing just the slides. Is there a video of this talk somewhere?
- tripzilch 14y agoHm, I see on the schedule page of PyCon-ZA that the talk was only this morning? (or night, depending on your time zones) So I can imagine that if there'll be a video available, we'll have to wait for it :)
- Permit 14y agoDo these postings of slides ever help anyone? I never seem to get anything out of just clicking through slides with no explanations. It's essentially reading 20 unjustified bullet points to me.
- davidjohnstone 14y agoI agree. The problem is that modern slide design says that slides shouldn't be done in a way that lets them work independently of the presentation. That is, slides are there to provide structure and illustrate things that are difficult to describe verbally, but aren't meant to repeat what the presenter is saying. It would be very nice if these online slide presentations came with the speaker's notes that actually cover the main points of what they're saying (with explanation). This assumes that these notes exist, but I feel that the slides by themselves are not very valuable. (No disrespect meant to Armin Ronacher — I use his work every day and I'm a big fan of what he's done for the Python community.)
- scott_s 14y agoThat would be more of an essay - which would certainly be valuable, but takes a considerable amount of time.
- mikeash 14y agoReally, the problem is that a live presentation and an online slide deck all by itself are two very different things, and trying to make a single slide deck that works for both is pretty much doomed for failure.
- pivotal 14y agoI've said it before elsewhere, but for me reading the slides to a presentation I haven't seen is sort of like watching tv in a different language. I mostly know what's going on, and I can follow, but I'm pretty sure I'm missing the main points. That being said, seeing these presentation decks has often piqued my interest about some concept or other, and prompted me to learn it on my own. shrug
- dmbaggett 14y ago
- override 14y agoThese slides are horrible without the presentation. Pro Tip: Dont share slides if they dont stand on their own.
- foxhop 14y agoIf you are interested in learning more about python and caching I wrote a post about it couple days ago: http://russell.ballestrini.net/explaining-cache-with-python/ http://russell.ballestrini.net/explaining-cache-with-python/
- AncientPC 14y agoThat's more accurately described as memoization, as caching is a broader term. Also, you might want to look into Sieve of Eratosthenes, as you only have to test up to sqrt(n) for primality: https://en.wikipedia.org/wiki/Sieve_of_Eratosthenes https://en.wikipedia.org/wiki/Sieve_of_Eratosthenes
- foxhop 14y agoThank you, AncientPC. I have adjusted the article with the insight you and many others have provided me.
- xi 14y agoArmin's implementation of `cached_property` is not entirely correct. Well, it works, but the branch where `value` is not `missing` is never executed: the object's `__dict__` takes precedence over the descriptor as long as the descriptor does not define `__set__` method. Here is an implementation of `cached_property` I use: class cached_property(object): def __init__(self, fget): self.fget = fget self.__name__ = fget.__name__ self.__module__ = fget.__module__ self.__doc__ = fget.__doc__ def __get__(self, obj, objtype=None): if obj is None: return self value = self.fget(obj) # For a non-data descriptor (`__set__` is not defined), # `__dict__` takes precedence. obj.__dict__[self.__name__] = value return value
- the_mitsuhiko 14y agoDon't do this. Your implementation does not work if someone invokes the dscriptor's __get__ by hand which is not uncommon. My implementation takes the shortcut but also still does the correct thing if you keep a reference to the property object.
- pinchyfingers 14y agoI have a ton of respect for Armin. Can't wait for this video to be posted.
- ronreiter 14y agoI especially liked the last slide :)