User:Mwn3d: Difference between revisions

m
 
(123 intermediate revisions by 2 users not shown)
Line 1:
{{mylangbegin|Languages I use}}
{{mylang|Java|Advanced (active)}}
{{mylang|BASIC|Beginner (atrophied)}}
{{mylang|C|Beginner (atrophied)}}
{{mylang|C++|Beginner (atrophied)}}
{{mylang|Common Lisp|Super Beginner (atrophied)}}
{{mylang|Ruby|I looked at it once}}
{{mylang|Prolog|Super Beginner}}
{{mylang|Visual Basic|Super Beginner (could probably pick it up)}}
{{mylang|Brainf***|I know ''all'' of the commands}}
{{mylangend}}
{{notmylangbegin|Languages I don't want to use}}
{{notmylang|J|it has no words}}
{{notmylang|Ursala|looks too much like J [http://www.basis.uklinux.net/ursala/extra.fun]}}
{{notmylangend}}
==Me==
I am Mike Neurohr, aan student[[graduate at [httpof:://en.wikipedia.org/wiki/RIT RIT],] majoringgraduate who majored in computer engineering (3rd year). If you don't know what that is, mix computer science and electrical engineering, then add [[Assembly]] and [[Bell Labs|transistors]], and you got it. You can see some of my code and philosophy <s>theory</s> ramblings on my [http://rekaeuqs1sites.googlepagesgoogle.com/homesite/rekaeuqs1/ web page] (some links in the "Projects" section below go to my website as well). I have learned to code based on the [http://www.cs.rit.edu/~f2y-grd/java-coding-standard.html RIT coding standard] (which hasn't gotten me in trouble with other nerds yet), but sometimes I abandon minor rules for convenience (using "continues" and ternary operators).
 
I am originally from Pennsylvania. In December 2007, I will starthad a [[wp:Cooperative education|co-op]] job at [http://www.spectracomcorp.com/ Spectracom] from December 2007 to March 2008 in Rochester, NY. My currentprevious job iswas as a TA for a [http://www.cs.rit.edu/~vcss231 Java class at RIT.] (which I usually editreturned thingsto when I wasn't on hereco-op), duringwhere downtimeI atstarted doing a lot of my RC editing. I also advertised RC to the kids while I worked as a TA. My thatnext job was another co-op at [http://thomsonreuters.com/ Thomson-Reuters] (whileformerly theThomson-West), professorwhere isI talkingtested aboutsoftware things(mostly using [[JUnit]]). I worked from June through November 2009 at [http://www.cims.rit.edu CIMS], a lab at RIT. I started work at Bank of America (Charlotte, NC) in August 2010.
 
I'd like to teach programming, but I'd like to not go to grad school. I probably should have majored in CS, but I didn't realize this until it was too late to go back (so I got a minor instead).
 
I end up doing a lot of structural editing on RC. I like to see this site looking good and working properly. People are coming here to get programming help. The languages they're looking at are hard enough to use without a difficult website on top of it, so we should be as organized and logical as possible. My 6000th edit was adding a [[Morpion solitaire/Java|separate page for a long solution]] for [[Morpion solitaire]].
 
I used to live with [[User:Qrush|Qrush]] and [[User:Slawmaster|Slawmaster]] in what Slawmaster calls "the RC power-apartment." They have been inactive for a while, but I can sometimes get them to contribute a Lisp (Slawmaster) or Ruby (Qrush) example if a cool task arises.{{Rcpower}}
 
==Languages==
I've primarily worked inused [[C++]] and [[Java]], with some [[Ruby]], [[C]], and [http[wp://en.wikipedia.org/wiki/Motorola_68K |Motorola 68K]] Assembly (only Java and C professionally, and C was barely professional). I've also worked inused [[BASIC]] ([http[wp://en.wikipedia.org/wiki/QuickBASIC|QuickBasic QuickBasic4.5]] in particular)--my first programming language. In high school, I learned QBASIC[[QuickBasic]], C/C++, Java, [http[wp://en.wikipedia.org/wiki/Apple_IIe |Apple IIe]] Assembly, [[Pascal]], and [[Visual Basic]] (all somehow without learning what an Objectobject is...?). Lately I havemostly ause thingJava for Javanow. I kind of wish I got money for every time I "Added a Java example." I have recently taken college classes in C and VHDL. At my first co-op, I used [http://www.opnet.com OPNET]. The coding part of OPNET is C with some predefined functions (which usually make the program fail). All my other working experience (two other co-ops and my current job) has been in Java.
 
==Coding Choices==
Debugging method: Print statements ([[User Output - text|console]] or [[File I/O|file]])
 
Language: Java
 
[[:Category:Data Structures|Data structure]]: [[Linked List]]
 
[[:Category:Sorting Algorithms|Sorting algorithm]]: [[Bubble Sort]] for arrays, [[Merge sort]] for other [[collections]], though really it's a question of dataset size
 
Editor: [http://www.netbeans.org NetBeans] for projects ([[Eclipse]] is OK too), notepad or equivalent for things I just want to try
 
Braces for one-line [[Conditional Structures|conditionals]] and [[:Category:Iteration|loops]]: Not usually, but yes for a complex project, and the open brace is always on the same line as the conditional or loop
 
Program end on error: [[Exceptions]] and stderr, System.exit for Java [[GUI]] programs on window close (but it makes me feel bad)
 
Goto's: http://xkcd.com/292/
 
==OSs==
I have been a [[Windows]]/[[Microsoft]] user for the longest time. I used DOS way(playing backCommander inKeen theand dayDuke Nukem) way back before I knew how to check versions and all. I used Windows 95, 98SE, 2000, XP, and XP7. At college I started using [[UNIX]] and [[Solaris]] for CS (along with [[Emacs]] and Eclipse) and I've recently gotten intoused [[GNU]]/[[Linux]] (Debian testing w/Gnome). MyThe synaptic package manager was what drew me to it. If you haven't seen it, you'll be converted when you do. I've found that without Linux, learningI miss having multiple desktops (which I don't feel like installing for Windows). It has been slowedhard byto aget recentthe hardwaremotivation to install Linux again. It probably won't happen for a failurewhile.
 
==Projects==
*Truth table generator (Java): [http://rekaeuqs1.googlepages.com/truth Truth]
*[[RCBF/Java]], [[RCBF/BASIC/QuickBasic]], [[RCBF/TI-83 BASIC]], [[RCSNUSP/Java]]
*FSM simulator in Java with meta-language so people who don't know Java can use it: [http://rekaeuqs1.googlepages.com/fsm FSM] (similarly: [http://sites.google.com/site/rekaeuqs1/pda PDA])
*IRC bot (Java): [http://sites.google.com/site/rekaeuqs1/mwnbot mwnbot]
*An improved (but still crappy) [[Caesar cipher]]: [[User:Mwn3d/Seasoning Sandwich Caesar Cipher]]
 
==My perception of RC==
[[Category:What Rosetta Code Is|Mwn3d]](Some of these may overlap)
 
'''How I've used it'''
*How the heck do I do this again?
*What's an algorithm I can use to solve that problem?
*This code is pretty similar or a small part of something I want to do. Lemme just get that...
*This problem seems pretty simple. I bet someone on the Internet has done something about it--oop...yep...RC FTW.
*This Wikipedia article and even the pseudocode on it make absolutely no sense to me. Oh here we go!
*What was that incredibly trivial fact I learned years ago for one test and don't remember anymore?
*People need a nicer explanation of this programming topic (e.g. [[Recursion]]).
 
'''How I've seen it used'''
*I have a new job coding in X but I learned Y in college. Help!
*Look at my sweet new language! (which may or may not be better than yours)
*This program is kind of fun. How many languages can program it?
*Hey I still know this incredibly old/under-used language. Let me throw some examples up here.
*This fringe detail that only has occasional and minimal impact on the operation of this program is worded slightly wrong (see: [[User:Mwn3d/Word mincing|word mincing]]).
*English is not my/your first language so I/you don't communicate in a way that makes sense to you/me (this can manifest itself as long, confused arguments sometimes related to [[User:Mwn3d/Word mincing|word mincing]] where people get angry and someone just gives up rather than people coming to the right conclusion).
 
'''How I want it to be used'''
(No promises that I even use it these ways, see also: [[User:Mwn3d/Personal policies|personal policies]])
*Here's a practical way to do this in language X that definitely works with a clear explanation.
*Here is a nice explanation of this common problem/algorithm/programming topic.
*You should start by looking at these examples when trying to learn language X.
*This demonstrates a difference between language X and Y.
*I don't know too much about programming. Maybe this site can help.
 
'''How I suspect some non-contributors may be using it'''
*This task is exactly like/very similar to my recent homework assignment. Sweet! Now I don't have to really do the assignment.
*I thought this problem/algorithm would have a simpler explanation here. I'm lost in notation and vocabulary. I'll look somewhere else.
*This website has more language X/my language users/examples so it's better than language Y/your language. I win!
 
==Personal Todo List==
*Add named lang and reason params to ENA templates
*<nowiki>#foreach</nowiki> + [[Template:Language]] = awesome -- on hold
*Translate RCRPG/Perl to Java (and BASIC if possible).
*[[Forth]] interpreter task with a limited set of commands (thinking about using [http://iweb.dl.sourceforge.net/project/j2eeforth/Documentation/J2EE%20Forth%20Language%20Reference.pdf page 5 here] for some)
 
[[Programs for::Fun| ]][[Programs for::Work| ]][[Speaks::English (American)| ]]
Anonymous user