background preloader

Computer Science

Facebook Twitter

Algorithms and Data Structures. I assume you are a computer programmer.

Algorithms and Data Structures

Perhaps you are a new student of computer science or maybe you are an experienced software engineer. Regardless of where you are on that spectrum, algorithms and data structures matter. Not just as theoretical concepts, but as building blocks used to create solutions to business problems. Sure, you may know how to use the C# List or Stack class, but do you understand what is going on under the covers? If not, are you really making the best decisions about which algorithms and data structures you are using? Meaningful understanding of algorithms and data structures starts with having a way to express and compare their relative costs.

Asymptotic Analysis When we talk about measuring the cost or complexity of an algorithm, what we are really talking about is performing an analysis of the algorithm when the input sets are very large. This stuff matters! Rate of Growth Rate of growth describes how an algorithm's complexity changes as the input size grows. A set of top Computer Science blogs. They are written by computer scientists and focus on computer science research;they are of consistently high quality;I regularly read them.

A set of top Computer Science blogs

N.B. I have deliberately excluded blogs primarily focusing on computer science education (for another time). Advanced Formatting. ‹ Back to Ry’s MathML Tutorial By now, we’ve covered pretty much all of the MathML tags for marking up equations.

Advanced Formatting

This module shows you how to format these elements and integrate them with the surrounding HTML content. We’ll talk about colors, font sizes, inline expressions, whitespace editing, and phantom elements. Browser support for some of these formatting options is spotty, so you are strongly encouraged to use the MathJax template discussed at the beginning of this tutorial.

Colors. Vectors And Functions. ‹ Back to Ry’s MathML Tutorial This module covers all of the mathematical notation required for describing vector-valued functions.

Vectors And Functions

We’ll explore standard typesetting conventions, including: font selection, diacritics, subscripts, and relevant HTML entities. We’ll also look at a more robust method of grouping expressions. Font Faces. [citation needed]» Blog Archive » The homogenization of scientific computin. Over the past two years, my scientific computing toolbox been steadily homogenizing.

[citation needed]» Blog Archive » The homogenization of scientific computin

Around 2010 or 2011, my toolbox looked something like this: Ruby for text processing and miscellaneous scripting;Ruby on Rails/JavaScript for web development;Python/Numpy (mostly) and MATLAB (occasionally) for numerical computing;MATLAB for neuroimaging data analysis;R for statistical analysis;R for plotting and visualization;Occasional excursions into other languages/environments for other stuff.

In 2013, my toolbox looks like this: Ry's MathML Tutorial. ‹ Back to Ry’s MathML Tutorial Just as HTML uses tags to define headings and paragraphs, MathML uses them to describe the various parts of a mathematical expression.

Ry's MathML Tutorial

Bruning Questions: Sorting Processes. December 07, 2012 - by Joyent.

Bruning Questions: Sorting Processes

From Sand to Processor or How a CPU is made. It is hard to believe that a modern processor (CPU) is the most complex product in the world.

From Sand to Processor or How a CPU is made

What is so complex in this piece of metal? In this article I will try to explain how a modern processer (CPU) is made from the sand. Processor Manufacturing It takes about $ 5 billion dollars to build a processor manufacturing factory. Science as a Strategy. Last night, I had the pleasure to deliver the keynote address as the CIO Summit US .

Science as a Strategy

It was an honor to address an assembly of CIOs, CTOs, and technology executives from the nation’s top organizations. My theme was “Science as a Strategy”. To set the stage, I told the story of TunkRank : how, back in 2009, I proposed a Twitter influence measure based on an explicit model of attention scarcity which proved better than the intuitive but flawed approach of counting followers.

The point of the story was not self-promotion, but rather to introduce my core message: Given the audience, I didn’t expect this message to be particularly controversial. Ask the right questions. Computer Science is Not Math. A surprisingly common sentiment among some programmers is that “computer science is math.”

Computer Science is Not Math

Certainly, computer science as a rigorous discipline emerged from mathematics. Now, we consider such foundational work to be theoretical computer science. For example, Alonzo Church’s lambda calculus and Alan Turing’s Turing machine provided a theoretical foundation for computation. At the time, the two self-identified as mathematicians, and were clearly doing mathematics. So if the foundations of computer science are math, how is it that computer science as a whole is not math? Simply, computer science has grown well beyond its purely theoretical roots. Research in Programming Languages. Is there still research to be done in Programming Languages? Software Engineering Tech Trends.

By Tom Litton, Senior Software Engineer Object Computing, Inc. (OCI) Introduction The release of JUnit more than a decade ago revolutionized testing on the Java platform. Elementary Number Theory: the algebra of arithmetic functions. Intro & Euler’s and… From Sand to Processor or How a CPU is made - Intel. It is hard to believe that a modern processor (CPU) is the most complex product in the world. What is so complex in this piece of metal? In this article I will try to explain how a modern processer (CPU) is made from the sand. Processor Manufacturing It takes about $ 5 billion dollars to build a processor manufacturing factory. The Fourier Transform, explained in one sentence.

If, like me, you struggled to understand the Fourier Transformation when you first learned about it, this succinct one-sentence colour-coded explanation from Stuart Riffle probably comes several years too late: Stuart provides a more detailed explanation here. This is the formula for the Discrete Fourier Transform, which converts sampled signals (like a digital sound recording) into the frequency domain (what tones are represented in the sound, and at what energies?). It's the mathematical engine behind a lot of the technology you use today, including mp3 files, file compression, and even how your old AM radio stays in tune. Gödel, Turing and Cantor: The Math.

Fourier transform for dummies. Depth- and Breadth-First Search.