User:Paddy3118
My Favorite Languages | |
Language | Proficiency |
Python | Advanced? |
C | Advanced(some time ago) |
AWK | Advanced? |
Tcl | I get by |
Perl | I get by |
BASIC | Advanced(some time ago) |
VHDL | Yep |
Verilog | Yep |
Bash | Yep |
csh | Yep |
Wrote my own | Been there. Done that. Next! |
... | ... |
Hi, I'm Donald McCarthy. I work with Electronic Design Automation tools creating design flows, filling in the gaps with novel tools, and generally helping to design and verify integrated circuits. Your phone might have a processor I worked on, or if you have a nice German car, the engine management chips or the braking controllers might be things I've worked on.
I have used the Python programming language for over a decade, and am a python advocate, working by POLITELY (sorry about the shout), spreading the word in forums such as this, and by answering Python queries in blogs. I maintain my own blog Go Deh!.
Rosetta Code Tasks
Although I do a little cleanup of RC pages, and engage in relevant talk page discussions (Kick-me if I seem impolite), I had a stash of examples written for an un-published, (and un-finished to be truthful), book on Python that might be candidates for tasks.
It turned out that, most of the tasks I have written, I developed with RC in mind, and follow my interests at the time. I maintain a list in my talk page of new pages I have created, and, being vain, like to track their viewings, (but I don't artificially pump their viewing stats; that would be impolite, and pretty pointless).
There is one edit that was not for a new page or a task I did that I like to remember, and that was my changes to the entry on Hexadecimal (that also lead to me adding octal).
What Rosetta Code is to me
- A better repository for those algorithms that interest me.
- A way to improve my technical writing skills. (Something that can be very useful at work).
- A way to do as I say: I really can't stand papers written for journals and too many Wikipedia maths entries where you are confronted by a sea of symbols, without any attempt to take the interested amateur along with them. We're not dumb, and we have to be pretty interested to end up reading the paper anyway. I think of it not as "dumbing down", more like popularising.
- It's a way to take my mind off a harder problem so that my unconscious can do its magic.
Writing and maintaining tasks
Wow, it certainly teaches you a lot about how easy it is to miss something in the description of a task. I have very regular indication of how easy it is to miss something out when implementing a task from a description, as I watch others completing tasks here, very often someone elses mistakes stops me from blundering into the same thing which may make me look a little better ;-)
Pages I have started
# Task Title Create time & date Example count 1 Spiral matrix 06:27 5 August 2008 49 2 Monty Hall problem 17:59 5 August 2008 49 3 Web scraping 20:09 20 August 2008 51 4 Sequence of non-squares 08:36 24 August 2008 57 5 Anagrams 20:28 24 September 2008 67 6 Text processing/Max licenses in use 22:06 3 October 2008 48 7 One-dimensional cellular automata 21:35 8 October 2008 58 8 Conway's Game of Life 22:06 10 October 2008 53 9 Text processing/1 09:47 8 November 2008 32 10 Text processing/2 22:21 13 November 2008 32 11 Align columns 05:27 16 November 2008 61 12 Probabilistic choice 18:28 17 November 2008 36 13 Knapsack problem/Unbounded 22:02 2 December 2008 42 14 Day of the week 14:06 12 December 2008 73 15 Non-decimal radices/Output 05:14 31 January 2009 45 16 Literals/Integer 23:03 1 February 2009 66 17 Interactive programming 17:18 21 February 2009 53 18 First-class functions 15:22 24 February 2009 55 19 Y combinator 03:54 28 February 2009 50 20 Function composition 06:26 3 March 2009 71 21 Exceptions/Catch an exception thrown in a nested call 05:31 7 March 2009 34 22 Look-and-say sequence 09:20 4 April 2009 60 23 Mutual recursion 21:22 9 April 2009 80 24 Bulls and cows 14:21 3 May 2009 51 25 Test a function 18:15 28 May 2009 35 26 Menu 18:27 3 June 2009 48 27 Sort stability 08:32 6 June 2009 39 28 Averages/Simple moving average 21:13 17 June 2009 54 29 Send email 05:51 1 July 2009 27 30 Topological sort 05:46 3 July 2009 31 31 Ethiopian multiplication 04:51 23 July 2009 82 32 Russian Peasant Multiplication 04:53 23 July 2009 82 33 First-class functions/Use numbers analogously 20:00 5 August 2009 29 34 Seven-sided dice from five-sided dice 05:28 8 August 2009 29 35 Verify distribution uniformity/Naive 05:28 8 August 2009 25 36 Flatten a list 16:41 16 August 2009 69 37 Evolutionary algorithm 19:07 6 October 2009 48 38 24 game 17:12 31 October 2009 52 39 24 game/Solve 04:48 1 November 2009 31 40 Bulls and Cows game 06:46 2 November 2009 51 41 Hamming numbers 18:38 2 December 2009 39 42 Random number generator (included) 08:01 23 January 2010 52 43 Pangram checker 19:12 25 January 2010 70 44 String interpolation (included) 07:21 30 January 2010 52 45 Arbitrary-precision integers (included) 06:45 13 February 2010 54 46 Averages/Pythagorean means 05:22 20 February 2010 62 47 Averages/Geometric mean 05:35 20 February 2010 62 48 Averages/Harmonic mean 05:36 20 February 2010 62 49 Averages/Root mean square 07:57 20 February 2010 67 50 Averages/Quadratic mean 07:58 20 February 2010 67 51 Dot product 07:18 24 February 2010 84 52 Luhn test of credit card numbers 06:01 2 March 2010 70 53 Hailstone sequence 00:03 8 March 2010 83 54 Hofstadter-Conway $10,000 sequence 08:21 9 March 2010 33 55 Find common directory path 19:34 23 March 2010 42 56 Horner's rule for polynomial evaluation 03:28 31 March 2010 64 57 Luhn test 04:35 2 April 2010 70 58 Number reversal game 19:11 3 April 2010 42 59 Bulls and cows/Player 13:19 13 June 2010 18 60 Four bits adder 15:38 15 June 2010 33 61 Minesweeper game 10:40 10 July 2010 17 62 Extreme floating point values 19:36 15 July 2010 27 63 Range extraction 22:20 15 July 2010 45 64 Range expansion 22:25 15 July 2010 43 65 Short-circuit evaluation 17:29 24 July 2010 53 66 Short circuit evaluation 17:29 24 July 2010 53 67 Quaternion type 21:46 2 August 2010 34 68 Stable marriage problem 23:27 5 August 2010 22 69 Truncatable primes 22:33 8 September 2010 27 70 Topological sort/Extracted top item 19:45 6 October 2010 3 71 Guess the number/With feedback 06:02 29 October 2010 48 72 Guess the number/With feedback (player) 06:11 29 October 2010 26 73 Ordered words 21:35 9 November 2010 48 74 CSV to HTML translation 11:38 13 November 2010 42 75 Simple quaternion type and operations 20:01 3 February 2011 34 76 Tic-tac-toe 07:12 4 February 2011 17 77 Noughts and crosses 06:05 5 February 2011 17 78 Sort disjoint sublist 06:29 12 February 2011 34 79 Unbias a random generator 06:55 22 February 2011 28 80 Unbalance a random generator 06:56 22 February 2011 28 81 Text processing/3 08:36 24 February 2011 48 82 Show a table with row and column headings 07:42 9 March 2011 42 83 Van der Corput sequence 21:44 10 March 2011 26 84 Executable library 23:41 14 March 2011 11 85 Partial function application 08:04 25 March 2011 28 86 Box the compass 20:58 27 March 2011 43 87 Yin and yang 10:19 2 April 2011 35 88 Vector products 14:18 9 April 2011 44 89 Natural sorting 11:12 23 April 2011 6 90 Permutations/Derangements 09:32 14 May 2011 18 91 Anagrams/Deranged anagrams 11:32 14 May 2011 30 92 Knight's Tour 07:17 29 May 2011 24 93 Kaprekar numbers 06:48 7 June 2011 33 94 Dinesman's multiple-dwelling problem 08:23 25 June 2011 17 95 Unicode variable names 07:16 1 July 2011 27 96 Beyond ASCII variable names 07:17 1 July 2011 27 97 FFT 08:38 11 July 2011 24 98 Numeric error propagation 02:51 30 July 2011 11 99 Break OO privacy 03:38 6 August 2011 13 100 ScriptName 11:26 6 August 2011 55 101 Boxing the compass 06:08 19 August 2011 43 102 One of n lines in a file 22:02 7 September 2011 22 103 Knuth's algorithm S 19:15 21 October 2011 21 104 Hofstadter Figure-Figure sequences 08:18 22 October 2011 20 105 Hofstadter Q sequence 09:08 23 October 2011 31 106 Truth table 07:19 31 October 2011 12 107 Simple Database 10:39 1 November 2011 10 108 Hello world/Newbie 09:10 6 November 2011 10 109 Parsing/Shunting-yard algorithm 22:47 2 December 2011 10 110 Parsing/RPN calculator algorithm 05:35 3 December 2011 23 111 Parsing/RPN to infix conversion 20:16 3 December 2011 12 112 Set consolidation 10:48 7 May 2012 12 113 Set consoldation 15:13 7 May 2012 12 114 Trabb Pardo–Knuth algorithm 20:17 22 May 2012 15 115 Fibonacci n-step number sequences 21:52 24 May 2012 11 116 Floyd's triangle 19:03 24 June 2012 13 117 Dutch national flag problem 09:25 1 July 2012 5
(Auto-generated so it includes miss-spellings and re-directs)