Skip to content →

Tag: wordpress

math2.0-setup : mysql and php+

Last time I wondered whether a set-up like WordPress.com meets FaceBook with add-ons (such as wiki- and latex-support) might be a usable environment for people working in a specific arXiv-topic.

I’ve used WordPressMU and BuddyPress to create such an embryonal environment. At first I thought I’d extend it a bit before going online but I fail to have the energy right now so I might as well make the link available. If you are into math.QA and/or math.RA you are invited to join the experiment. But, please use this site gently as I’ll have to drop it otherwise.

I’ve no desire to maintain this site indefinitely but would welcome others to set up something similar. For this reason I’ll write a couple of posts explaining how you can build it yourself when you’d have a free afternoon and a spare Mac around. Each post should not take you longer than 1 hour. Today, we’ll provide the boring but essential basics : we must get a MySQL-server and a WebServer running. Next time, I’ll take you through the WordPressMU (MU for multi-users) and BuddyPress installation. After that, we’ll add extra functionality.

We will start from a vanilla 10.5.6 installation. We will often need to edit files, so we’d better grab a good, free  texteditor : TextWrangler, drag it to Applications and place it in the Dock. We’ll also type in commands so we want the TerminalApp (to be found in Applcations/Utilities) in the Dock. SystemPreferences and Safari are already in the Dock and as we will need these tools a lot we might rearrange the Dock to look like



From left to right : the Finder, Terminal, Safari, TextWrangler and System Preferences. From now on we will mean by ‘Open …’ that you click on the ‘…’ icon. In the end we want our computer to become a web-server, so we don’t want it to go to sleep. Open SystemPreferences and look for the ‘Energy Saver’-icon, click on the ‘Show details’ button and set the ‘Put the computer to sleep when it is inactive for:’ to Never and unmark the ‘Put the hard disk(s) to sleep when possible’ at the bottom.

We will need to start or stop the WebServer so here’s how that’s done : open SystemPreferences and look for the ‘Sharing’-icon. Marking the ‘Web Sharing’ option is equivalent to starting your webserver (you can verify this by opening Safari and pointing it to http://localhost/ and you should see the default Apache-screen), unmarking it stops the webserver (check this by repeating the previous, now you should get a ‘Safari can’t connect to the server’ message).

All of this was probably trivial to you so let’s do something a bit more advanced : setting up a database-server. OSX doesn’t come with MySql, so we need to download and install it.

MySQL :

Get the latest version : choose the Mac OS X 10.5 (x86)-package and download it (they ask you to register but you can bypass this by clicking on the ‘No thanks, just take me to the downloads’-link). It is a 55.3 Mb file so this may take a couple of minutes. If all goes well this window should pop-up



Click on the mysql-5.0.67-osx10.5-x86.pkg icon and follow the instruction (defaults suffice, you’ll be asked to give your sudo password and in all it will take less than a minute). Repeat this procedure with MySQLStartupItem.pkg. Done!

To verify it, Open Terminal and type this to the prompt

sudo /Library/StartupItems/MySQLCOM/MySQLCOM start

You’ll get a scary warning message but type in your sudo-password and the Mysql-server will start. You can access it by typing

/usr/local/mysql/bin/mysql

and type exit to the mysql-prompt to leave.
In all, your interaction with the terminal should look something like this



Clearly, you do not want to type all of this every time, so we will add the mysql-location to our ‘PATH’. To do this, open TextWrangler and add this line to the blank document

export PATH=$PATH:/usr/local/mysql/bin

and save the file as .profile in your home-directory (the one with the ‘House’-icon, usually given your name). You will get a warning that .-files are reserved but go ahead anyway by clicking the use . – button). Now, open Terminal and type this

source ~./profile
echo $PATH

if all went well you should now see the mysql-location at the end of your path. From now on you’ll only have to type

mysql

to the terminal-prompt to open MySql. At the moment the root-user of your mysql has no password which isnt safe so we’d better set one. Open terminal and type

mysqladmin -u root password NEWPASSWORD

where, of course, you replace NEWPASSWORD with your choice (use only letters and numbers). From now on you can access your mysql-server by opening Terminal and typing

mysql -u root -p

and giving your password. Okay, so we’ve established our first goal, we have a working Mysql. Take a break if you need one.

better PHP

Mac 10.5 comes equipped with php5 but unfortunately it isn’t quite up to what we need. So, we need to install a better one and tell the mysql-server and the webserver to use the new one instead of the standard one.

Open Safari and grab the better php-version by going to

http://www2.entropy.ch/download/php5-5.2.5-6-beta.tar.gz

It is a 85.2 Mb file, so have a bit of patience. The file gets unzipped automatically and downloaded in the Downloads-directory. Open Finder and go there. At the moment your Downloads-directory will look like



Doubleclick on the php5-5.2.5-6-beta.tar file and a new directory will be created called php5. We will now move this directory and lay some symbolic links. Open a new Terminal window and type the following commands (and provide your sudo-password when asked)

cd Downloads
sudo mv php5 /usr/local
sudo ln -sf /usr/local/php5/entropy-php.conf /etc/apache2/other/+entropy-php.conf
sudo mkdir /var/mysql
sudo ln -s /tmp/mysql.sock /var/mysql/mysql.sock

Next, we have to tell the webserver to use this new php-version instead of the old one. This information is contained in the apache-configuration file : httpd.conf. Open TextWrangler and under ‘File’ choose the option ‘Open File by Name’. Type /etc/apache2/httpd.conf in the field that appears. The file will now appear in the main window. Under ‘Search’ choose the ‘Go to Line’ option and fill in 114 and hit the Go To button. The follwing line should now be highlighted

#LoadModule php5_module libexec/apache2/libphp5.so

immediately under it add the following line (TextWrangler will tell you that the file is owned by root and ask you whether you want to open it, click yes and make the changes)

LoadModule php5_module local/php5/libphp5.so

(observe that line 114 is commented out, that is, starts with a #, whereas your added line is not).
Save the file (Textwrangler will ask you to provide the sudo-password).

Next, we will have to tell php to communicate with the mysql-server. Again, open TextWrangler, under ‘File’ choose ‘Open File by Name’ and type in /usr/local/php5/lib/php.ini-recommended. When the file appears, under ‘Search’ choose ‘Go to Line’ and type in 810. It will read

mysql.default_socket =

Change it as follows (that is, add to it)

mysql.default_socket = /var/mysql/mysql.sock

and now choose under ‘File’ the ‘Save as…’ option. In the window change php.ini-recommended to php.ini and click Save. Done!

Testing…

Restart your webserver. Recall that this means: open SystemPreferences, choose ‘Sharing’, unmark ‘Web Server’, wait 5 seconds and then mark it again.

Open TextWranger, make a new Text document containing just one line (remove the white space between the ?-signs and the brackets) :

< ?php phpinfo() ? >

Choose ‘File’ and ‘Save as…’ and in the window that appears navigate to YourHardDisk/Library/WebServer/Documents, name the file ‘test.php’ and click the ‘Save’ button



Finally, open Safari and point it to http://localhost/test.php. Cross your fingers and if you get a screen like the one below treat yourself to something nice!



Leave a Comment

yet another math2.0 proposal

At present, some interesting experiments are going on exploring the potential of web 2.0 for mathematical research, that is, setting up a usable math 2.0 – environment.

The starting point is that math 2.0 should be something like blogs+extras. Most mathematicians are not that interested in the latest ICT-tools, but at least they are slowly getting used to reading blogs, so we should stick to this medium and try to enhance it for online-research.

Michael Nielsen has written a couple of posts on this : an after-dinner talk about doing science online aiming at a mathematics audience, building on an essay on the future of science.

Both posts were influential to Tim Gowers‘ dream of massively collaborative mathematics. He took an interesting problem, laid down a set of 12 rules-of-conduct and invited everyone to contribute. The project is still gaining momentum and Terry Tao is also posting about it on his blog.

Michael Nielsen compared Gowers’ approach to long established practice in the open-source software community.

Another interesting experiment is nLab, a knowledge-wiki set up by the reader-community of the n-category cafe. They describe it as : “In other words: this place is like the library, or alchemist’s laboratory, in the back room of the n-Category Café. You come here to work and go there to chat.
We are hoping to create here a space for presentation and archival storage of collaborative work of encyclopedic, didactic, expositional, but also original nature. This will include, but not be limited to, the subjects being discussed every day in the n-Café.”

Both experiments are working great, aided by the authority-status of the blogger, resp. the popularity of the blog, within the research topic. But, what about topics failing to have a blogger or blog of similar status? Should we all drop our current research-interest and convert to either combinatorics or higher-categories?

History taught us in case of failing authority we’d better settle for ‘manageable anarchy’. So, here’s my math2.0-anarchy-allowed-proposal :

  • per research-topic (say, an arXiv-topic) we’ll set up a seperate online-reasearch-environment
  • anyone interested in that topic is allowed to register and fill-out a profile linking to her list of publications, describe his research interests, her ongoing projects and other trivia
  • some may want to start a blog within the environment or join an already existing one, and should be allowed to do so
  • some may opt just to read blog posts and occasionally comment, and again, should be allowed to do so
  • some may want to set up a research-group to solve a specific problem. they may choose to do this in the open, or as a covert-operation, taking on new members only by invitation
  • some may use the environment mainly for networking or chatting-up with their friends
  • some research-groups may want to start a group-blog or knowledge-wiki to archive their finds
  • surely we’ll be not discussing math in ASCII but in latex
  • anyone will be able to follow specific sub-projects via RSS-feeds
  • anyone can see site-wide activity online, see who’s currently there and chat if they feel the need
  • anyone can do whatever sensible web2.0-thing there is I forgot by age and hence by ignorance

If this seems like a tall order to satisfy, a bit of research will show that we live at the fortunate moment in time when all the basic ingredient are there, freely available, to do just that!

Over the last weeks I’ve wasted too many hours googling for help, reading-up different fora to get it all working, but … somehow succeeded. Here’s a screen-shot of my very-own NSN (for : noncommutative-social-network) :



Please allow me a few more days to tidy things up and then I’ll make the link available so that anyone interested can experiment with it.

But then, I’ve no desire to spend my days web-mastering such a site. Perhaps some of you would like to take this on, provided you’d get it on a silver plate? (that is, without having to spend too much time setting it up).

So. I’ll run a series of posts explaining how to “set-up your own math2.0 environment”. I’m not aiming at the internet-savvy ones (they’ll probably do it a lot more efficiently), but at people like myself, who are interested to investigate web-based possibilities, but need to be told where to find the very basics, such as the location of their httpd.conf file or their php.ini and such.

I’ve zeroed my MacBookPro, re-installed OSX 10.5 from scratch, upgraded it to current 10.5.6 but no extras (say, vanilla 10.5.6). And I’ll guide you from there, in all gory details, with plenty of screen-shots as I would have liked to find them when I tried to set this up.

One Comment

best of 2008 (2) : big theorems

Charles Siegel of Rigorous Trivialities ran a great series on big theorems.

The series started january 10th 2008 with a post on Bezout’s theorem, followed by posts on Chow’s lemma, Serre duality, Riemann-Roch, Bertini, Nakayama’s lemma, Groebner bases, Hurwitz to end just before christmas with a post on Kontsevich’s formula.

Also at other blogs, 2008 was the year of series of long posts containing substantial pure mathematics.

Out of many, just two examples : Chris Schommer-Pries ran a three part series on TQFTs via planar algebras starting here, at the secret blogging seminar.
And, Peter Woit of Not Even Wrong has an ungoing series of posts called Notes on BRST, starting here. At the moment he is at episode nine.

It suffices to have a quick look at the length of any of these posts, to see that a great deal of work was put into these series (and numerous similar ones, elsewhere). Is this amount of time well spend? Or, should we focus on shorter, easier digestible math-posts?

What got me thinking was this merciless comment Charles got after a great series of posts leading up to Kontsevich’s formula :

“Perhaps you should make a New Years commitment to not be so obscurantist, like John Armstrong, and instead promote the public understanding of math!”

Well, if this doesn’t put you off blogging for a while, what will?

So, are we really writing the wrong sort of posts? Do math-blog readers only want short, flashy, easy reading posts these days? Or, is anyone out there taking notice of the hard work it takes to write such a technical post, let alone a series of them?

At first I was rather pessimistic about the probable answer to all these questions, but, fortunately we have Google Analytics to quantify things a bit.

Clearly I can only rely on the statistics for my own site, so I’ll treat the case of a recent post here : Mumford’s treasure map which tried to explain the notion of a generic point and how one might depict an affine scheme.

Here’s some of the Google Analytics data :



The yellow function gives the number of pageviews for that post, the value ranges between 0 and 600 (the number to the right of the picture). In total this post was viewed 2470 times, up till now.

The blue function tells the average time a visitor spend reading that post, the numbers range between 0 and 8 minutes (the times to the left of the picture). On average the time-on-page was 2.24 minutes, so in all people spend well over 92 hours reading this one post! This seems like a good return for the time it took me to write it…

Some other things can be learned from this data. Whereas the number of page-views has two peaks early on (one the day it was posted, the second one when Peter Woit linked to it) and is now steadily decreasing, the time-on-page for the later visitors is substantially longer than the early readers.

Some of this may be explained (see comment below) by returning visits. Here is a more detailed picture (orange = new visits, green=returning visits, blue=’total’ whatever this means).



All in all good news : there is indeed a market for longer technical math-posts and people (eventually) take time to read the post in detail.

6 Comments