Hacker Newsnew | past | comments | ask | show | jobs | submit | Nicci00's commentslogin

I don't see the appeal of italics or ligatures, other than simple rice. I've been using DejaVu mono for the past 10 years, it's fine for me.


DejaVu Sans Mono with ligatures from Fira Code is the best I could find so far.


I felt uneasy in my college electives composed almost entirely of women.


I imagine I would have loved that.


Selling a computer with spinning rust as main drive in 2017 is extremely shameful.


Why? Time and I/O speed isn't as relevant for everyone as you might think. I sure don't want a system without flash memory, but I know not everybody is me and not everybody will care.


My mother bought a spinning rust iMac two years ago, sold to her as a "fast" machine. It was not fast. It took 15-30 seconds+ to do the most basic of tasks. It was unusable. I did what I could to remove background tasks and it was still painful to work on. She hated it.

I cloned the drive onto an external SSD with no other changes. Immediately she had a usable machine, and she now enjoys using it again.


Operating systems increasingly seem to be expecting an SSD. Windows is unreasonably slower on an HDD, extremely frustrating to use at all. IIRC that started with Win8, but might've been 10. Linux DEs, heading the same way. Wouldn't be surprised to find out that MacOS is like that these days, too.

That does mean OS/DE devs are hitting disk way the hell too often and just hoping modern disk speed makes it harder to notice, but there's no way that's not adding up to some real (but less crippling) latency even on SSD-equipped systems.


So it's not an option for you, me or your mom, but that doesn't mean it's not an option for the billions of other people in the world. (again, not saying it's a good idea considering the cost and storage requirements for a general user -- but again, not everyone is the same user)


Because it's really slow.


To us perhaps, but most western users are only a fraction of people on the world. Even if you take BRIC out of the picture you still have billions of people that either nave no computer or a computer that is so old a recent PC with a rotating disk is still way faster. It's very easy to get lost in a current context.


Sure, I'd rather have a computer with spinning rust than none at all, but we're talking about new $1000+ machines where there's no rationality behind using these disks in 2019, or even 2009. It's just a money making machine for Apple.


Get a sewing machine and start making your own clothing. I've been trying my hand at it and I've made a few shirts and pants I wear during the weekends. They still look a bit shabby and not decent enough to wear for work thought.


Bought a H&M zipper jacket by the start of this year, somehow now it's is as worn down as a Adidas one I bought in 2011! H&M mostly sells disposable clothing, and they have the never of making "conscious" fashion ads.


Id be useful to have a "math for programmers book" that uses pseudo code instead of math notation. I studied math notation in 8th grade and then forgot about it.


Possibly, but if you want to learn maths, then the notation is one of the smallest, easiest parts of it, and it's really helpful for the bigger, harder parts.

Code is usually way more verbose than maths notation, so things get a lot bigger and it can be a lot harder to see what's going on. Learning maths notation is like learning the basic syntax of a programming language related to one you know already - there's not much to it and it doesn't take long to be able to read it comfortably. If you can already code then you know the basics and many relevant concepts already.


"Coding the matrix" was the breakthrough for me in grokking linear algebra, and this is what it does. Things are explained in terms of matrices and the mathematical transformations, and then explained in terms of python data structures and a loop over the elements. And most of the examples are computer science, like rotating images.


I remember this course when it first came out, but didn't go through it since I didn't actually know how to program/code back then. Should I just buy the paperback off Amazon?


I didn't even know it was a course, I just got the book on Kindle. But I'd say go for it - as the other commenter said, it's cheap, and it doesn't require much coding knowledge, and it even explains most of what you do need to know if it's new to you. The real breakthrough is implementing the transformation in terms of fairly simple loops - which as a coder worked well for my brain. A non-coder might not find the advantage as big as I did, but I certainly don't think someone who can pick up some basic coding would struggle to understand what is being taught.


It's pretty cheap. I'd say go for it.


Check out this short excerpt of definitions and examples of the math "alien symbols": https://minireference.com/static/excerpts/set_notation.pdf They are really not that bad once you learn their meaning + very useful shorthand (you can think of math notation as a DSL with specific expressions for math operations).

Longer preview of the book: https://minireference.com/static/excerpts/noBSguide_v5_previ... and here is another preview of the LA book: https://minireference.com/static/excerpts/noBSguide2LA_previ... Both books have been pretty popular with the programming crowd. They use standard math notation, but there are lots of code examples and computing analogies, so you'll feel right at home.


This book (Data Science Bookcamp) uses actual Python code instead of math notation. https://www.manning.com/books/data-science-bookcamp


A Programmer's Introduction to Mathematics is probably what you're looking for. https://pimbook.org/


I bought the book attempted to study from it and I am not a fan. It covers topics too briefly to be called an "introduction" to mathematics. If you have a solid math background and need a refresher you may find it useful, otherwise I found MIT OCW Mathematics for Computer Science to be a much more suitable introduction, and it comes with problem sets and answers (for the 2010 course). You can also purchase the course notes in book form on Amazon.

https://ocw.mit.edu/courses/electrical-engineering-and-compu...

solutions https://drive.google.com/drive/folders/0B4G5KBKimr07WXRlT0VK...

physical book https://www.amazon.com/Mathematics-Computer-Science-Eric-Leh...


If you can't even learn the syntax how will you ever learn the semantics?



I wonder if these improvements will trickle down to desktop Linux users.


Basically if it is accepted into the mainline kernel then yes, otherwise not unless people decide to install custom kernels. Distros backport a little bit, but generally don't include anything not accepted into mainline. Then there are a few popular custom kernels that include changes not included in mainline because they are not generally useful, and only make sense for specific workloads.


Likely immediately for HEDT owners.

I make use of VFIO on my home Threadripper, and while it's "only" 12 cores and 64GB RAM, it's NUMA so I have to use thread pinning to keep cores on the same die so they're not reaching across the Infinity Fabric to the other memory controllers.

With better memory allocation, I could assign >12 vCPUs on performance oriented VMs or use more than half my memory without incurring a latency penalty.


I appreciate the lack of math notation, for many with a poor mathematics backgrounds it feels like a huge wall into getting into interesting and useful theories.


I agree, I m working on a google translate idea for math. I think notations could be more readable!


Bayes theorem is very well suited to this. Frankly, it's one of those rare cases where those without much math might find it easier to read the original paper than many of the introductions...


When I finally got Bayes Theorem I thought it says something obivious in unfamiliar terms.

What made it click for me was realizing that bayesian networks are a mini-language and the Bayes theorem is much more easily explained visually than with formulas. I think teachers should start with telling the correspondence between them and probability terminology.

Here's how I would explain it.

----

In a bayesian network nodes are events, arrows are probabilities.

When you traverse a path made of successive arrows you multiply the probabilities of the arrows you encounter along the path.

When there is more than one path to get from A to B and you want to know the probability of getting from the former to the latter, you sum the probabilities obtained from the various paths.

When you say "probability of A" it's like saying: sum of the paths that get to A.

When you say "probability of A and B" it's like saying: sum of the paths that include both A and B.

When you say "conditional probability of B given A" it's like saying: starting from A, sum of the paths that lead to B.

----

Let's do a simple application. This is a tree that doctors should find familiar and from which i understood it.

     /T+
  D+/
   /\
  /  \T-
 /
 \    
  \  /T+
   \/
  D-\
     \T-
    
Starting from root, at the first bifurcation we have: probability of having a disease or not. At the second bifurcation we have: probability that a diagnostic test tells either "positive" or "negative".

Usually doctors can estimate the values of the single arrows of this tree.

Let's say I told you: what's the conditional probability of having a positive test given the patient has the disease? Given what we said, you just put your pencil on D+ and follow the path to T+: just 1 arrow, no need to multiply (it's called the "sensitivity" of the test).

What's the probability of having a positive test randomly extracting a person from population? Since we don't start with a patient that has or not a disease, we put our pencil on root. There are 2 ways of getting to a T+: root-->D+-->T+ and root-->D- -->T+. As we said above, while following each of the paths we multiply the arrows we encounter and then we sum the result of the 2 paths.

And finally: what's the probability of our patient having the disease given that the test says "positive"? We said we have 2 ways to get a positive test, but in only one of these ways our patient really has the disease, so we just divide the probability given by the only path that contain both D+ and T+ by the probability given by all paths that lead to T+. We are just saying that true positive are a fraction of all positives (seems obvious to me?). Numerator is the only "test is positive and it's true" path. Denominator is the sum of all "test is positive" paths.

Well, guess what we just did:

P(D+|T+) = ( P(T+|D+) P(D+) ) / P(T+)

(Additional intuition: another way to see it is that what we did corresponds to mapping the tree we started from to a flipped one in which the first bifurcation is T+/T- and the second one is D+/D-)


I think a better way to describe it is ven diagrams:

conditional probability is just like, what proportion does A represent given B has already happened.

A might be small in the ven diagram box, but take up a larger area when constrained to only the part that B is in


Bayes Theorem hardly requires any math notation at all. It would literally take you less than a minute to understand conditional probability.

Yikes.


Possibly true, but just looking at the Wikipedia page for Bayes Theorem, more than half the text on the page is math notation: https://en.wikipedia.org/wiki/Bayes%27_theorem

It doesn't matter how simple the math actually is, if someone is unfamiliar with mathematical notation it's going to be overwhelming to read.


Then learn the notation or find another source.

This is a bit like complaining about the existence of books because you never learned how to read.


I guess some people interested in machine learning doesn’t know about multiplication and division, but i wouldn’t want to depend on their models...


Oh yeah, and the first actually usable form of Bayesian Theorem would be probabilistic graphical models with max-sum algorithm. Good luck mastering that quickly or at all!


That is far from the first usable form of Bayes. I have no idea what point you are making.

Bayes Theorem is easily derived algebraically using conditional probability and the chain rule. You can also derive it easily with a Venn diagram. There is barely any notation needed at all here to understand it.

If you're struggling with things at that level, it is more likely due to your own laziness, not because the math is hard. Because it is very easy to reason about.


Chain rule???


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: