Top all-time · #389
Pythonic Perambulations
Personal blog · jakevdp.github.io/blogprogrammingdata
Pythonic Perambulations is a personal blog at jakevdp.github.io about programming and data. Since 2013, 140 different Hacker News readers have linked it 166 times, most often “Why Python Is Slow: Looking Under the Hood”. The last post was in 2018, but the archive is still widely read.
Sometimes recommended · 9 of 40 sampled comments recommend it?
Why HN links it
Linked as a reference for why Python is slow, frequentist vs Bayesian statistics, colormaps, conda and NumPy. Commenters call several posts useful, good or very good.
- Recommended for · 9 comments
- Called very good, excellent, a useful read, a good overview, well worth reading, and having great explanations.
Summarised by Claude from a sample of 40 HN comments that link here. Each comment is marked recommending, critical or neutral (citing without judging); how this works.
Most-linked posts?
- Why Python Is Slow: Looking Under the Hood10 people · 10 mentions · first linked 2014-05-11
- The waiting time paradox: why is my bus always late? (2018)10 people · 10 mentions · first linked 2019-10-03
- Python Data Science Handbook9 people · 9 mentions · first linked 2017-08-20
- XKCD Plots in Matplotlib: Going the Whole Way9 people · 9 mentions · first linked 2015-10-12
- Frequentism and Bayesianism: A Practical Introduction8 people · 11 mentions · first linked 2014-03-11
- Conda: Myths and Misconceptions7 people · 9 mentions · first linked 2016-08-25
- How Bad Is Your Colormap? (2014)6 people · 7 mentions · first linked 2018-08-10
- Why Python is Slow: Looking Under the Hood6 people · 6 mentions · first linked 2014-05-09
- Xkcd-Style Plots in Matplotlib (2012)5 people · 6 mentions · first linked 2015-05-18
- A Whirlwind Tour of Python2 people · 2 mentions · first linked 2017-08-16
What Hacker News says?
If by diagrams you mean charts, possibly https://jakevdp.github.io/blog/2012/10/07/xkcd-style-plots-i...
Comment linking /blog/2012/10/07/xkcd-style-plots-in-matplotlib/
on “Show HN: RoughJS – Create hand-drawn graphics using JavaScript”Submitted Python Data Science Handbook as a story · 455 points
HN discussionThese are called perceptually uniform colormaps and are also useful for grayscale printing, as the scale will still be valid. This is now the default in Matplotlib (eg viridis, magma, etc) https://jakevdp.github.io/blog/2014/10/16/how-bad-is-your-co... I have found occasion to use Jet though, it's good for highlighting transitions between close values when the colour scale is large (but not large enough to use a log…
Comment linking /blog/2014/10/16/how-bad-is-your-colormap/
on “Common color mistakes and how to avoid them”Submitted The Waiting Time Paradox, Or, Why Is My Bus Always Late? as a story · 345 points
HN discussion> It is customary when simulating heat flow to use a wacky color palette where red is hot and blue is cold, with all kinds of intermediate colors in between In an otherwise excellent article, this is the only issue I could find. We really need to stop using/recommending/normalizing rainbow color maps (i.e. jet). They actively confuse readers by creating visual artifacts that aren't actually in the data. This article…
Comment linking /blog/2014/10/16/how-bad-is-your-colormap/
on “Poisson's Equation”Submitted Xkcd-Style Plots in Matplotlib (2012) as a story · 325 points
HN discussionhttp://jakevdp.github.io/blog/2014/06/12/frequentism-and-bay...
Comment linking /blog/2014/06/12/frequentism-and-bayesianism-3-confidence-credibility/
on “Scientists rise up against statistical significance”Submitted Python Data Science Handbook as a story · 312 points
HN discussionYes, well, the green wave is a good idea in principle, but it's sorta mistaking averages for reality. There is this thing called the "waiting time paradox" [0] (or more generally the "inspection paradox") that suggests a surprising thing, the average time between discrete events observed by many other randomly interspersed observation is the same as the average time between events. This should be surprising, because…
Comment linking /blog/2018/09/13/waiting-time-paradox/
on “Google Is Uncovering Hundreds of Race Conditions Within the Linux Kernel”Submitted Why Python Is Slow: Looking Under the Hood as a story · 220 points
HN discussionSee Myth #6 here: http://jakevdp.github.io/blog/2016/08/25/conda-myths-and-mis...
Comment linking /blog/2016/08/25/conda-myths-and-misconceptions/
on “My Python Development Environment, 2018 Edition”Submitted The waiting time paradox: why is my bus always late? (2018) as a story · 219 points
HN discussionThis is also a useful read: http://jakevdp.github.io/blog/2016/08/25/conda-myths-and-mis...
Comment linking /blog/2016/08/25/conda-myths-and-misconceptions/
on “My Python Development Environment, 2018 Edition”Submitted The Big Data Brain Drain: Why Science is in Trouble as a story · 211 points
HN discussionKaggle learn: https://www.kaggle.com/learn "Python Data Science Handbook" (O'Reilly) http://jakevdp.github.io/PythonDataScienceHandbook awesome-python#web-content-extracting: https://github.com/vinta/awesome-python#web-content-extracti... https://learnxinyminutes.com/docs/python/ "What is the best way to learn to code from absolute scratch?" https://news.ycombinator.com/item?id=16299880
Comment linking /PythonDataScienceHandbook
on “The World Excel Championship is being broadcast on ESPN”Submitted Why Python is Slow: Looking Under the Hood as a story · 208 points
HN discussionWorth mentioning is the The Waiting Time Paradox: "When waiting for a bus that comes on average every 10 minutes, your average waiting time will be 10 minutes." And worse "when the average span between arrivals is N minutes, the average span experienced by riders is 2N minutes." These realizations about Poisson distributions have a lot of real-world implications such as packet traffic, call center calls, etc. - http…
Comment linking /blog/2018/09/13/waiting-time-paradox/
on “Some Useful Probability Facts for Systems Programming”Submitted Why Python is Slow: Looking Under the Hood (2014) as a story · 170 points
HN discussionJake Vanderplas did something similar many years ago in python [1]. I miss his blog posts (must be busy doing something great). [1] https://jakevdp.github.io/blog/2012/10/07/xkcd-style-plots-i...
Comment linking /blog/2012/10/07/xkcd-style-plots-in-matplotlib/
on “RoughViz: JS library for creating sketchy/hand-drawn style charts in the browser”Submitted Why Python Is Slow: Looking Under the Hood (2014) as a story · 142 points
HN discussion> Bayesians claim that their methods can help scientists overcome confirmation bias The claim isn't that Bayesianism somehow prevents biases. Using a Bayesian approach is important in science because frequentism answers the wrong question [1]. Many scientists operate as if the confidence interval is a Bayesian credible region, but it demonstrably is not ... I think the reason this mistake is so common is that in man…
Comment linking /blog/2014/06/12/frequentism-and-bayesianism-3-confidence-credibility/
on “Bayes's Theorem: What's the Big Deal?”Submitted How to be a Bayesian in Python as a story · 142 points
HN discussionI mean, you can modify Python code at runtime if you like. This has a good overview of all the nonsense happening under the hood: http://jakevdp.github.io/blog/2014/05/09/why-python-is-slow/
Comment linking /blog/2014/05/09/why-python-is-slow/
on “Python stands to lose its GIL, and gain a lot of speed”Submitted XKCD Plots in Matplotlib: Going the Whole Way as a story · 137 points
HN discussionVery good point. Additionally, with insert and delete we might need to apply the rules of broadcasting [0]. For example, if I have a 2-dimensional array and I insert a scalar value by using axis=0, the scalar value needs to be broadcasted to match the column dimension of the array: >>> a = np.array([[1,2],[3,4],[5,6]]) >>> np.insert(a, 1, 11, axis=0) array([[ 1, 2], [11, 11], [ 3, 4], [ 5, 6]]) [0] https://jakevdp.g…
Comment linking /PythonDataScienceHandbook/02.05-computation-on-arrays-broadcasting.html
on “NumPy Illustrated: The Visual Guide to NumPy”Submitted How Bad Is Your Colormap? (2014) as a story · 133 points
HN discussionFollow up in 2013. XKCD officially merged in Matplotlib. http://jakevdp.github.io/blog/2013/07/10/XKCD-plots-in-matpl...
Comment linking /blog/2013/07/10/XKCD-plots-in-matplotlib/
on “Xkcd-Style Plots in Matplotlib (2012)”Submitted Simulating Chutes and Ladders in Python as a story · 126 points
HN discussionit should be noted that the code to do this is actually part of matplotlib now. The author comments about it here http://jakevdp.github.io/blog/2013/07/10/XKCD-plots-in-matpl... and refers to the code in the post here as "my ugly little hack."
Comment linking /blog/2013/07/10/XKCD-plots-in-matplotlib/
on “Xkcd-Style Plots in Matplotlib (2012)”Submitted Understanding the FFT Algorithm as a story · 114 points
HN discussion