I am very happy to announce that, as of next academic year, I will be joining the faculty of the Department of Economics and Finance at Utah State University as a Visiting Assistant Professor.
Desmos (www.desmos.com) is a great interactive graphing tool. Here is an example of how is can be use in teaching economics:
One slightly unpleasant feature of LanguageTool with Texstudio is that new words are a little harder to add to the dictionary than when using Texstudio’s native spellcheck.
The good part of having to add words through LanguageTool is that words you add are, well, actually added to the dictionary, whereas adding words to Texstudio’s native dictionary is — in my experience — unstable (I’ve had to add the same words multiple time in many occasions, in particular after updates).
For explanation on how to add words to LanguageTool’s spell check, once again see the very good documentation on LanguageTool’s website at http://wiki.languagetool.org/hunspell-support#toc0.
I will try to keep an updated list of words I added here. The list might be of some use in particular to those working in a field related to microeconomics theory.
I am terrible with grammar, as you will likely observe somewhere in this post or elsewhere on my website. This is often very embarrassing. These days however, I should be able to spare myself the embarrassment given the plethora of language checking softwares.
There are two main reasons these softwares do not do the job for me:
- I do most of my writing in LaTex with Texstudio, and Texstudio only comes with a rudimentary spell checker with little grammar checking abilities (it’s a pain to copy paste in Word, mostly because Word’s checker gets caught into LaTex syntax).
- I am so bad that even state-of-the-art language checker do not catch most of my mistakes. For instance, I am very bad with homophones. I often get words like “to” and “too” mixed up when I write, which even Word’s checker misses most of the time.
Regarding 2., what I really need is a language checker in which I can set up my own rules. When I realize I’ve made a mistake, I know I am likely to make that mistake again. Thus it is just a matter of making the effort to write down a rule that will catch that mistake for me in the future.
I’ve wanted to do just that for a while, but never found the right tool. My salvation might come from LanguageTool.
- LanguageTool works with Texstudio (see https://www.youtube.com/watch?v=VYIY7bbSv4Q for a simple installation tutorial) and natively improves upon the default language checker in Texstudio.
- LanguageTool gives you the ability to add your personal rules using a relatively straightforward syntax (there is a learning curve, but it’s not too bad).
For instance, I can easily tell LanguageTool to look for instances of “It is not to bad” (which Word’s checker does not flag) and suggest to replace it by “It is not too bad”.
Rules in LanguageTool are quite versatile and allows for regular expression via the regex syntax.
LanguageTool’s tutorial explains how to create and add rules very didactically at http://wiki.languagetool.org/development-overview#toc4. Because the previous link has broken in the past, here is a direct quote describing the basics:
“Most rules are contained in rules/xx/grammar.xml, whereas xx is a language code like en or de. In the source code, this folder will be found under languagetool-language-modules/xx/src/main/resources/org/languagetool/; the standalone GUI version contains them under org/languagetool/.
A rule is basically a pattern which shows an error message to the user if the pattern matches. A pattern can address words or part-of-speech tags. Here are some examples of patterns that can be used in that file:
matches the word think
- <token>think</token> <token>about</token>
Matches the phrase think about – as the text is split into words, you need to list each word separately as a token. This will not work: <token>think about</token>
- <token regexp="yes">think|say</token>
matches the regular expression think|say, i.e. the word think or the word say. You can write simple rules without knowing regular expressions, but if you want to learn more about them you can try this tutorial.”
LanguageTool even has a handy rule editor that you can use to create new rules if you don’t want to learn too much about the rules’ syntax (community.languagetool.org/ruleEditor2/index).
You can download a list of the custom rules I find most useful here. I will try to update the list as I write down new rules.
“Martin Van der Linden is the 2016 recipient of the Household International Award for Best Research Paper by a Graduate Student.” http://as.vanderbilt.edu/econ/news/graduate-awards.php
Patrick Prosser has some great java code at http://www.dcs.gla.ac.uk/~pat/roommates/distribution/ which, among other things, can compute all the stable matchings in roommate problems.
If you are interested in two-sided matchings, rejoice : Patrick’s code allows preferences over roommates to include unacceptable roommates. To implement a two-sided market, just make sure any roommates on one side of the market views any other roommate on the same side of the market as unacceptable, and you’re good to go.
If (like myself) you are not used to java, you might struggle a little to get the code working. Here is a little tutorial for Mac OS, which worked for me as of today.
- Make sure you have java installed and that java can be executed from the terminal (get help from google if you have troubles with this point).
- Download the code at http://www.dcs.gla.ac.uk/~pat/roommates/distribution/code20160401/
- Download the code at http://www.dcs.gla.ac.uk/~pat/roommates/distribution/choco/
- Open your terminal and add the path to choco to your classpath by running
export CLASSPATH=$CLASSPATH:/(path to choco folder)/choco-solver-2.1.5.jar
- where (path to choco folder) should be the place where you put the choco folder you downloaded from http://www.dcs.gla.ac.uk/~pat/roommates/distribution/choco/, e.g. /Users/Me/Desktop/choco/ if that’s where you put it.
- Travel to the directory where you put the code you downloaded at http://www.dcs.gla.ac.uk/~pat/roommates/distribution/code20160401/ by running
cd /(path to code20160401 folder)/code20160401
- again, make sure you have the right path, e.g. /Users/Me/Desktop/code20160401 if that’s where you put it.
- Compile the java classes from the .java files in the directory by running
- Have fun and run any example you like (follow the readme at http://www.dcs.gla.ac.uk/~pat/roommates/distribution/ for a description of what the code can do). For instance, you can grab one of the examples at http://www.dcs.gla.ac.uk/~pat/roommates/distribution/data/, say sr6.txt, put it in (path to code20160401 folder)/code20160401 and run
java SR sr6.txt
- to get a stable matching in example sr6.txt, or
java SR sr6.txt all
- to obtain all stable matchings in profile sr6.txt.
Check out my new working paper with John Nay and Jonathan Gilligan at http://arxiv.org/abs/1603.08961.