Good move, Microsoft!
August 12th, 2006 by SplineGuy
have to admit/confess something. To the dismay of many of my scientific programming pals, I am Microsoft Junkie. No matter how many folks try to convert me to Linux or to even the Mac, I remain a loyal customer of the giant evil (fill in whatever other mean and nasty adjectives you like) Microsoft. I know their system, I understand their interface, I grew up Microsoft (after an early stint as an Apple IIe fan). What else can I say? Now, don’t get me wrong, I do have an occasional affair with my mistress, Linux. I just recently switched to a Linux server from and Windows XP machine running Apache. It just made more sense to use a more efficient operating system to serve my website, especially since I was hosting it on an older machine with less RAM than is really need to run XP. Plus the machine I was running was borrowed. I came across this deal with which I was very impressed: iPAQ Sub-100 Desktop, a $75 computer. I’ll have more on that conversion in a later post. It went fairly well, only taking a full 2 days to make the switch.
But I digress. What I really wanted to comment on was my great satisfaction with a move by Microsoft to make smaller versions of their development software available for free. I have used Visual Studio since I started learning to program. I started with C but then added an Intel Fortran compiler that would cooperate with Visual Studio. I then moved on to Visual Basic to C++ and now to C#. So far, as only a mathematician using these languages to implement fairly straight forward models, I am very impressed with the ease of use toward my ends. This summer, I delved into the wide world of Bioinformatics whose experts rely still almost entirely on Perl, I came across a few individuals developing routines in C# and so I leaned that direction for all my scripts and programs. It was easier to make the transition from C and C++ to the managed environment of C#. I did get down the basics of Perl which wasn’t too bad since I was familiar with UNIX scripting from my days with the High Performance Computing Center at Texas Tech University.
So, Good move, Microsoft! Anyone interested in good and free Windows development software look no further than Visual Studio Express Editions. They work well for me, maybe they’ll work for you!
By the way, here’s quick summary of the software I’ve developed successfully with Visual Studio Express Editions. Hopefully, several of these will make more sense after I discuss a few of my Bioinformatics projects in later posts:
- Einverted Search (GUI): searching for inverted complements of 20 - 24 nucleotide sequence within a given length of nucleotides, setting a score minimum threshold, gap penalty, match/mismatch score.
- CreateFastaFromAccession (GUI): create a subset of a database in FASTA format given the source database and list of gene accession ids.
- Output parsers: scripts that take the output from other scripts and output them in chosen output formats. C#, with its integration with Regular Expressions, is a very efficient tool for Text Manipulation. In my experience, it rivals even Perl, although all my equivalent perl scripts were significantly shorter than my C# scripts. Although, they were comparable in execution time.
- MicroRNA candidates searching: the first two are a subset of a larger algorithm to find candidates as miRNA through a bioinformatics approach.
- Variable Knot Spline curve fitting: As a continuation of some previous research, I have implemented parallel code to perform random searches for the free knot spline problem.
- Scattered Data Approximation with Orthogonal Distance Regression Splines
- Optimal Portfolio Theory
- Optimizing the committee selection process for WBU Faculty: This project is under development. I am working to develop software that will streamline the selection of committee members based on defined parameters for each committee as well as preference provided by faculty members. Additionally, measures such as external campus representation and division representation should be considered in measuring the success of a committee distribution. In the end the software will both make for an easy interface to select members for a committee and also provide a measure of the success of the full selection. Make sense? Stay tuned for more on this.








ymn7bqavuv423d3b