Posts

Python and PostgreSQL: Create a PostgreSQL Database Connection Using a Config File

This technique can easily be applied to other databases. 1. pip install two packages if you do not already have them in your Python environment. (Search the internet for ‘python pip install’ if you need help.) A. psycopg2: To interact with PostgreSQL databases B. configparser: To interact with config files 2. Create a config file named config.ini. Paste in the text below: [ default] host = localhost db_name = your_database_name postgres_user = postgres_username postgres_password = your_password Edit the details to match your environment. 3. Create a Python file named main.py. Paste in the text below: from configparser import SafeConfigParser import psycopg2 parser = SafeConfigParser() parser.read('config.ini') host = parser.get('default', 'host') db_name = parser.get('default', 'db_name') postgres_user = parser.get('default', 'postgres_user') postgres_password = parser.get('default', 'po...

Convert a wav file to mp3 with FFmpeg, pydub, and three lines of Python

Ten minutes ago I played a song I had not heard before and said, that was a good song! I should send it to Sam. But it's in WAV format so it's really big. Wouldn't it be nice if Python could convert it to mp3 to make it smaller? Ten minutes later it was done. Amazing. Here are the easy steps to follow if you would like to try it. 1. Search the internet for 'python convert wav mp3'. 2. Download FFmpeg and add it to your system path: http://adaptivesamples.com/how-to-install-ffmpeg-on-windows/ 3. 'pip install pydub', then copy some sample code from here and make slight adjustments to match your file paths and song file name: https://github.com/jiaaro/pydub 4. Run the script: from pydub import AudioSegment song = AudioSegment.from_wav("G:/Music/Rock/The I Don't Cares/Wild Stab/Sorry for Tomorrow Night.wav") song.export("Sorry for Tomorrow Night.mp3", format="mp3") 5. Email the mp3 file to Sam. And do...

The Use of Views Has No Impact on Query Performance in PostgreSQL

More evidence that PostgreSQL is the best database. The documentation supports one of my strongest beliefs about database design: Making liberal use of views is a key aspect of good SQL database design. Views allow you to encapsulate the details of the structure of your tables, which might change as your application evolves, behind consistent interfaces. Views can be used in almost any place a real table can be used. Building views upon other views is not uncommon. Source: https://www.postgresql.org/docs/10/static/tutorial-views.html In answer to a question about the impact of views on query performance, veteran PostgreSQL core developer Bruce Momjian gave the following answer: They have no impact whatsoever. The parser thinks the view is a real table. The query structure gets passed to the re-writer and the re-writer wipes out the view and substitutes the underlying tables. And that re-write is what gets passed to the query optimizer. The optimizer doesn't see the v...

The Internet Can Be Useful If Used Properly

This post is here because I had not added one for two-and-a-half years. In the interim, the world has not suffered from the lack of my posting. (It has suffered for other reasons, but let's not get into that. The idea here is not to be depressing, no, far from it.) Nonetheless, I feel compelled to put something here, if only to be able to say to myself, "Good job, Pete. You have done it. Let this be a start, and soon you will add many fabulous things to your blog. It will be part of a personal Renaissance. Let many flowers bloom." Or something along those lines. Something very positive and good. Anyway, music continues to be really good. You only need to look for it. One of the best ways is via YouTube. Being a reasonably intelligent person, I find a visit to the front page of YouTube demoralizing. I really don't want to even know what is popular. Knowing about popular things is a great way for me to get really discouraged. However, if you search for so...

The Three Acts of the Mind

The acts of the mind, wherein it exerts its power over simple ideas, are chiefly these three: 1. Combining several simple ideas into one compound one, and thus all complex ideas are made. 2. The second is bringing two ideas, whether simple or complex, together, and setting them by one another so as to take a view of them at once, without uniting them into one, by which it gets all its ideas of relations. 3. The third is separating them from all other ideas that accompany them in their real existence: this is called abstraction, and thus all its general ideas are made. -- John Locke, An Essay Concerning Human Understanding (1690)

97 Things Every Programmer Should Know

This collection of short articles about programming best practices is well worth perusing. Courtesy of O'Reilly Media.

In Appreciation of Procedural Programming

I think the lack of reusability comes in object-oriented languages.... [T]he problem with object-oriented languages is they've got all this implicit environment that they carry around with them. You wanted a banana but what you got was a gorilla holding the banana and the entire jungle. -- Joe Armstrong

Beatiful Day, Sox @ Yankees Tonight

Beautiful day today, and the Sox play their first game of the 2014 season against the Yankees tonight in the Bronx. Birds are chirping outside, and I can hear the last touches being put on a new bridge over the creek down the hill. An excellent day indeed.

Your Opinion May Not Be Helping Things

Science is not designed to support your opinion. Instead, it is designed to reveal facts derived from empirical evidence. It is not the responsibility of facts to agree with what you might think. If you have placed yourself in a position to be bereft of them, facts do not care. They have no ability to care. They are only facts. If facts make you uncomfortable, try to figure out why this is so. This may not be your fault. Indeed, it is most likely that you have been misled about the illuminating qualities of facts. Perhaps your father did not embrace reason. That would be discouraging. Perhaps your mother didn't know how to show that she loved you. She did. It's okay. You can do better. You can start to learn about the way things work in the actual universe. There is much data available. And if you can read, you need only start reading. I wish you the best of luck.

Install the JDK Development Version on CentOS

If you want access to Java tools like jar and javac, install the development version of the JDK. # yum install java-1.7.0-openjdk-devel Add the bin directory to your PATH so you can run the Java programs from anywhere. # PATH=$PATH:/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.25.x86_64/bin View the classes in a jar file. # jar tvf dt.jar      0 Mon Jul 01 09:51:04 EDT 2013 META-INF/     71 Mon Jul 01 09:51:04 EDT 2013 META-INF/MANIFEST.MF      0 Mon Jul 01 09:51:00 EDT 2013 javax/      0 Mon Jul 01 09:51:04 EDT 2013 javax/swing/   4486 Mon Jul 01 09:51:04 EDT 2013 javax/swing/JSliderBeanInfo.class   3342 Mon Jul 01 09:51:04 EDT 2013 javax/swing/JFormattedTextFieldBeanInfo.class   3025 Mon Jul 01 09:51:04 EDT 2013 javax/swing/JMenuBarBeanInfo.class

Climate-Gate Scientist Cleared Over and Over Again

James Fallows, who is an excellent veteran writer for The Atlantic , published a post today about "climate-gate" scientist Michael Mann being cleared of all wrongdoing yet again, this time by the National Science Foundation. As is often the case, Mr. Fallows raises a lot of good points using a small number of words, and provides some nice links. One of the points is the amazing and disturbing rejection of well-established science by nearly the entire Republican party. As I once heard Chris Matthews say to Pat Buchanan, these guys "would have been great in the Dark Ages." What would Abe Lincoln be thinking right now if he could see this?

Tripoli Falls to Rebels, Earthquake in Virgina

After months of fighting to end Qaddafi's forty years of lunatic despotic rule in Libya, rebel fighters now control most of Tripoli, the capitol city, and today breached the walls of the presidential compound, where thousands celebrated and carried off booty and weapons. And on the same day, I felt my tenth floor cubicle in South Boston begin to sway at around two this afternoon, the result of a 5.8 earthquake all the way down in Virginia.

Economic Stimulus and the English Language

I just heard Orioles Hall of Famer Cal Ripken mispronounce the word "peripheral" as "periphial" on the MLB Network. This is one of the most commonly bungled English words, in my experience. A small way to stimulate the economy while improving English usage would be to create signs that teach proper spelling, pronunciation and usage of commonly botched words, and place them in public spaces.

Grizzly Bear's "While You Wait For The Others" on KCRW

This 2008 performance of "While You Wait For The Others," by the band Grizzly Bear, is mellow and trippy, with a muddy, popping guitar sound, a pleasing melody, sweet harmonies, and a rhythm section featuring nice snare work, quiet organ, interesting bass fills, and I say that this is a doggone pretty song. Recorded live for the show Morning Becomes Eclectic in the studios of KCRW, my old beloved Santa Monica Community College radio station. I drove many a mile around Southern California soaking up the musical and spoken sounds of this fine outlet. Long live KCRW.

How Algorithms Shape Our World

Check out this video by Kevin Slavin at a recent TED talk.

What Ails the Field of Economics, by Mark_BC

I'm mighty impressed by this explanation of what ails the field of economics. It's not what you expect, whatever it is that you expect. This is very good: http://www.amazon.com/review/R1FRA5LD2PG6HT/ So now I'm going to read this at his blog: http://markbc.wordpress.com/thermodynamics-for-economists/ Do what I did and read the first thing first, though. It's well worth it.

Sox Win in Ten, Take Series Against Yanks, 2-1

Last night the Red Sox returned to first place in the standings, when they beat the Yankees on a tenth-inning walk-off single by rookie right fielder Josh Reddick, after they had tied it in the ninth against the great Mariano Rivera. That gives Rivera fourteen blown saves against the Red Sox in his career. No other team in baseball has gotten to him more than eight times. Tonight Tim Wakefield will start the first game of a three-game set in Minnesota. This will be his third try at  career win number 200.

Growth, or the Lack Thereof

Who thinks the US will experience economic growth sufficient to lower the unemployment rate below 6% any time in the next eight to ten years in the absence of major government stimulus?

Clive Owen on S&P's Downgrade of America's Debt Rating

Clive Owen points out in the Atlantic that the S&P downgrade of the US debt rating should not have a significant market impact; that the ratings agencies have very little credibility; and that, at the same time, America deserves a downgrade, due, more than anything, to political dysfunction.

Once Every Eight Months Without Fail

In keeping with my goal to publish a blog post at least once every eight months, without fail, here goes, on the sixth of August, exactly eight months since the last entry. Sox Pound Yanks, Tie for First After falling out of first place for the first time in a month last night, the Red Sox beat the Yankees, 10-4, at Fenway Park this afternoon, to move back into a tie for the top spot in the AL East. Red Sox center fielder Jacoby Ellsbury drove in a career-high six runs, including a three-run bomb to right, his nineteenth of the season, to cap a five-run outburst in the bottom of the fourth and give the hometown nine a 7-2 lead, after the Yanks had tied it at two in the top of the inning. In a shining example of a reverse lock, Red Sox starter John Lackey, he of the $17 million yearly salary and the second worst ERA in the game in 2011, easily out-dueled CC Sabathia, who came into the game with a league-leading 16 wins, but fell to 0-4 against the Sox on the season, giving up sev...