Hello AI, I Am Julia

data visualization


Julia for data visualization

A few friends and former students who are working as programmers have told me recently that I should write about Julia. Julia is not a person but a language. One person called this "the new Python" while another said it was the "Python killer."

Python is the so-far-unchallenged leader of AI programming languages and is used by almost 90% of data scientists, but it is probably not the future of machine learning. Programming languages, like all languages, fall out of favor and sometimes die. There is not much demand for the COBOL, FORTRAN and BASIC that was being taught when I was an undergrad.

Julia is faster than Python because it is designed to quickly implement the math concepts like linear algebra and matrix representations. It is an open source project with more than a thousand contributors and is available under the MIT license with the source code available on GitHub.

I have learned that you don’t need to know programming to do some AI. There are no-code AI tools like Obviously.AI, but programming is necessary for some devlopment.

The home site for Julia is julialang.org which has a lot of information.

An article I read at pub.towardsai.net led me to investiagte a free online course on computational thinking at MIT that is taught using Julia.

This is not a course on programming with Julia but almost all data and AI courses are taught in Python (perhaps a few using R and other languages) so this is unique as a course. The course itself uses as its topic the spread of COVID-19.and includes topics on analyzing COVID-19 data, modeling exponential growth, probability, random walk models, characterizing variability, optimization and fitting to data. Through this topic the course teaches how to understand and model exponential functions. That has much broader application into financial markets, compound interest, population growth, inflation, Moore’s Law, etc.

Lorenz attractor

Julia used for scientific computing

As that article notes, right now searching jobs on LinkedIn for “Python Developer” will turn up about 23,000 results, so there is a market for that skill set now. Searching “Julia Developer” will return few results now. You can find a LinkedIn group for Julia developers, called “The Julia Language,” so interest is there and the jobs are beginning to appear. A Julia specialits now has a big advantage in that there are fewer people with that skillset for the jobs that are appearing. The predictions (always a dangerous thing) are that Julia has a big role to play in the data & AI industry.

The Reading Level of Your Readers

ErnestHemingway

Writing online, I am kind of guessing about who are my readers. I know where they come from geographically and I know how they find me in a search and what articles they read and other analytics. I don't know what their reading level might be and every writing course will tell you that you "need to know your audience."

I make some assumptions that readers of a blog about technology and learning are mostly educators and so I further assume that they have a high school and above reading level. But how do you determine the reading level of what you are writing?

If you write in Microsoft Word, it is simple to use two major readability tests that are built-in: the Flesch Reading Ease and Flesch-Kincaid Grade Level.

For the Flesch Reading Ease and Flesch-Kincaid Grade Level statistics to come be part of the “Spelling & Grammar” review of your content, you will need to enable those statistics. To do this select “File” then “Options” next go to the “Proofing” tab and check the box that says “Show readability statistics.”

Flesch-Kincaid scores are readability tests designed to show how easy or difficult a text is to read. This score is given in two different ways. First is the “Flesch Reading Ease” number which ranges from 0 to 100. With a score of 90-100, your writing could be understood by an average 11-year old and a score of 60-70 could be understood by average 13 to 15-year olds. A score of zero to 30 means your writing could be understood by a university graduate.  A bit counterintuitively, the higher the score the easier the writing is to read and comprehend.

For comparison, Time magazine averages at a score of 52 and the Harvard Law Review falls somewhere in the low 30s.

The Flesch-Kincaid Grade Level applies a reading grade level to your writing. I learned many years ago that most general news articles in The New York Times have a tenth-grade reading level. Romance novels have about a fifth-grade reading level. 

I ran a recent article here through the test and got the results shown below. The Reading Ease score is about 55 and a Grade Level a tenth-grader in the middle of sophomore year. 

readability statsYou might think that score seems to be low for a post I am aiming at educators, but many sources will recommend that ease of reading in order to boost your numbers and even in your emails and communications. I know that some researchers have said that your response rate varies by reading level. The article linked here claims that emails written at a 3rd-grade reading level were optimal with a 36% boost over emails written at a college reading level and a 17% higher response rate than emails written even at a high school reading level.

When Microsoft Outlook and Word finish checking the spelling and grammar, you can choose to display information about the reading level of the document using the Flesch Reading Ease test and the Flesch-Kincaid Grade Level test. You can also set your proofreading settings to flag things like jargon, which is often what pushes ease aside and pushes readers to leave.

This may sound like advice to "dumb down" your writing. I don't think it is that. The English major part of me is reminded of Ernest Hemingway's journalistic simplicity. You can still get across deep ideas in simple language. I like the Einstein quote “Everything should be made as simple as possible,
but not simpler.” 

Serendipities

“Serendipity is looking in a haystack for a needle and discovering a farmer’s daughter.” - Julius Comroe

 

cover Eco

Umberto Eco's book, Serendipities: Language and Lunacy, is not a book about education or technology. It is about some riddles of history and the "linguistics of the lunatic." I am an Umberto Eco reader and first noticed him, as many people did, with his novel The Name of the Rose

That novel takes place in 1327 in an Italian Franciscan abbey that is suspected of heresy. Brother William of Baskerville arrives to investigate and the story is a medieval mystery with a series of seven murders. Eco is

and he mixes in Aristotle, Thomas Aquinas and Roger Bacon. There are secret symbols and coded manuscripts in a higher level version of the Dan Brown novel formula.

I was partially attracted to Serendipities because of the title, but it's not an easy to read novel, but rather a non-fiction study.

Eco looks at mistakes that have shaped human history. For example, Christopher Columbus assumed that the world was much smaller than it is, land so he assumed he could find a quick route to the East via the West. He was wrong, but he accidentally "discovered" America.

Cults such as the Rosicrucians and Knights Templar seem to have resulted from a mysterious starting place that was a hoax. That kind of start made both groups ripe for conspiracy theories based on religious, ethnic, and racial prejudices. 

Eco posits that serendipities and mistaken ideas can have fortuitous results. 

On The Writer's Almanac, there was a nice short history of serendipity, parts of which I have also written about here. The word “serendipity” was first coined in 1754, and is now defined by Merriam-Webster as “the faculty or phenomenon of finding valuable or agreeable things not sought for.” 

“Serendipity” was first used by parliament member and writer Horace Walpole in a letter that he wrote to an English friend who was spending time in Italy. In the letter to his friend written on this day in 1754, Walpole wrote that he came up with the word after a fairy tale he once read, called “The Three Princes of Serendip,” explaining, “as their Highnesses travelled, they were always making discoveries, by accidents and sagacity, of things which they were not in quest of.” The three princes of Serendip hail from modern-day Sri Lanka. “Serendip” is the Persian word for the island nation off the southern tip of India, Sri Lanka.

The invention of many wonderful things have been attributed to “serendipity,” including Kellogg’s Corn Flakes, Charles Goodyear’s vulcanization of rubber, inkjet printers, Silly Putty, the Slinky, and chocolate chip cookies.

Alexander Fleming discovered penicillin after he left for vacation without disinfecting some of his petri dishes filled with bacteria cultures; when he got back to his lab, he found that the penicillium mold had killed the bacteria.

Viagra had been developed to treat hypertension and angina pectoris; it didn’t do such a good job at these things, researchers found during the first phase of clinical trials, but it was good for something else.

The principles of radioactivity, X-rays, and infrared radiation were all found when researchers were looking for something else.

A U.K. translation company put "serendipity" on a list of the English language’s ten most difficult words to translate along with plenipotentiary, gobbledegook, poppycock, whimsy, spam, and kitsch.

In Eco's intellectual history of serendipities, he includes dead ends and mistakes that were not fortuitous. Leibniz believed that the I Ching illustrated the principles of calculus. Marco Polo identified a rhinoceros as the mythical unicorn. 

Eco then turns to how language tried to "heal the wound of Babel." But throughout the Middle Ages and the Renaissance, various languages were held up as the first language that God gave to Adam. Greek, Hebrew, Chinese, and Egyptian were alternately seen as the starting place for language.

These essays by Umberto Eco are prefaced with his conclusion that serendipity is the positive outcome of some ill-conceived idea.