For me, I've always wanted to finish the O'Reilly "Mastering Regular Expressions" book. When I need a Regexp, I manage to get the one I need eventually, but it takes more effort than it should.
Learning a specific technology or language always seems to bubble up ahead of this.
Functional Programming.
Getting fully into automated unit testing
Games programming... 3d graphics particularly.
This is crazy, but writing device drivers :-)
Artificial Intelligence -- specifically Neural networks.
Multithreaded programming is something that I sometimes have to use but know next to nothing about.
Finding more free time to work on personal programming projects.
Learn a scripting language like Ruby or Python. A nice scripting language under your sleeve can really increase productivity.
Lisp / Scheme. I hear you feel enlightened after grokking it.
Anger management. Yes, that is a programming skill.
For sure, Regular Expressions. Have you ever seen the 6,343 character RegEx pattern for RFC822 validating email addresses? Abusive...
http://www.codinghorror.com/blog/archives/000214.html
Read The Art of Computer Programming [1], and say I understood everything without lying.
[1] http://www-cs-faculty.stanford.edu/~uno/taocp.html10-finger keyboard typing
Haskell
I would like to become proficient in functional programming. Coming from an OO background this would provide me with another perspective to solving coding problems.
Non-trivial assembly language programming.
Distributed computing. Being able to design & implement systems like world community grid [1] or folding@home [2].
[1] http://www.worldcommunitygrid.org/For me it would be writing compilers.
I'm surprised aku hasn't closed this thread yet.
C++
Never learned it and always wanted to.
delete
is a bad smell. b) the if
check is not necessary. c) NULL
... hmmm... although many of c++ programs use it, 0
is preferred in many circles and NULL is more of a c thing. assuming new is even necessary in this case: most programs take the form (pseudocode) t_auto_pointer<t_object> variable(new t_object(argument));
and deletion is automatic. if you're going to criticize a language, you should at least base your points on normal, well written programs of said language =) - Justin
Unit testing for a web application.
Don't laugh...
...XSLT
Python. Also motivation to do my own personal projects after 8 hours of programming at work.
Write a natural language parser.
You could do a lot of cool stuff with it and I think you would learn a lot.
Multi-threaded programming... Seems easy but very tricky to do it properly.
Manipulating audio data. I love music and it would be fun to figure out how to generate effects, or generate algorithms to create music.
Infallibility.
Becoming better at finding and fixing memory leaks.
It has to be unit and regression testing. I know the theory behind them, but not always when and how best to implement them.
Artificial Intelligence and/or Genetic Programming
Distributed Communication (such as WCF) ... I've used my share of soap web services, et al, but I don't feel that I've mastered the art of having systems talk to each other over the wire.
Edit: Since I've written this, I have gone on to learn and use WCF successfully ... quite happy with it :-)
Inversion of Control and Dependency Injection... truly, not just the theoretical part.
Silverlight and WPF
Javascript looks like it is going to take over the world. I guess it's time to start learing it properly rather than just copying examples off blogs.
Design Patterns, there are many of em, and knowing the ins and outs is really helpful for any developer. My favorite book on the subject is Head First Design Patterns.
Delivering on schedule.
Decent recursion
Understanding OpenGL
Compiler Construction. I have built parts of a compiler(syntax tree's, and such), but never the whole thing.
F# and Haskell
Monads, Combinators, higher-order functional programming black-magic.
I'd like to learn neural networks and learning algorithms. It's something magic about them that I love and hate at the same time.
Object Oriented programming.. I can go line for line scripting all day but the whole OOP concept seems lost on me..
I've always wanted to write or learn how to write my own compiler.
Lisp macros. Meta-programming is my holy grail, to be able to have my code be exactly isomorphic to the problem I'm trying to solve.
Faster at cranking out unit tests (so I don't have to put off writing them when time gets tight as it always does in a project).
Embarrassingly, really learning regular expressions.
C
Enough said ...
Linux
OK so it's not exactly a programming skill but I've never taken the time to build and use a Linux system. All I know are the basic command-line commands.
Designing clean interfaces that are usable enough to actually survive past prototyping.
On the advice of jjnguy, here is my answer:
For me, I've always wanted to finish the O'Reilly "Mastering Regular Expressions" book. When I need a Regexp, I manage to get the one I need eventually, but it takes more effort than it should.
test-driven programming and scrum
Functional Programming
I've always wanted to master Operating System programming... one day I'll get to it.....
Objective C 2.0
sigh... I really really really can't get into it because my personal sense of aesthetics is violated by its syntax.
I promise to try harder tho.
nil
or an implementation of the Maybe
monad. You tell me which one is simpler.
Of course, in a strongly, statically typed language, I'd prefer the monad solution. But messaging nil
really jives with the Objective-C/Smalltalk philosophy. - Jonathan Sterling
Finishing reading 'Code Complete' by McConnell - this book is brilliant but finding time to sit down and digest it all is difficult. I also would love to get into socket programming and distributed architectures.
Find a practical use for GPGPU programming [1] and true parallel programming.
[1] http://en.wikipedia.org/wiki/GPGPUMVC!
I've seen enough to know the basics but I haven't had time to run through a simple implementation to see all the pieces together.
This is one of those, yea it would be nice, but will not happen. I always wanted to get back into the math behind programming, for those of you who toiled through Comp Sci all that discrete mathematics, linear algebra and the likes actually has some bearing on what we do on a day to day basis and actually helps quite a bit.
COBOL (Just kidding)
Mental telepathy
Javascript. And by Javascript I don't mean simple forms validation. I mean the kind of Javascript that makes sites like Facebook and Gmail feel like a desktop application, and a slick one at that.
starting earlier...
It has to be APL.
There's something enticing about the most extreme, terse and esoteric languages...
Most famously, Conway's Game of Life was written in one line of APL:
life ← {⊃ 1 ω ∨ . ∧ 3 4 = +/ +⌿ 1 0 ~ 1 ∘ . Θ 1 - ~1 Φ" ⊂ ω}
Design Patterns.
I always want to learn F#, a functional program language on .NET.
I'm surprised that so many people share same mind with me.
monad: it looks wonderful but I could not grasp the concept :(
3D graphics, not just for video games but for Geographic Mapping.
Probably PowerShell
Continuous Integration / automated builds.
To improve algorithmic skills. (By reading Donald Knuth's "The Art of Computer Programming" (TAOCP))
Basic game programming, collision detection etc
JAVASCRIPT!!!!
For fun & adolescent nostalgia: 6502 assembly.
To expand how I think about programming, and finally get some of those Paul Graham essays: Lisp or Scheme. I want to have that profound enlightenment experience [1] that ESR was talking about.
To better myself professionally: Defensive and security-minded programming, particularly as it relates to web programming. I can make C#, Python or PHP do whatever I need it to, but sometimes my paranoia/obsession with security sometimes gets in the way of actually getting things done. In my own mind, I never reach a point where I think my systems are secure enough, and I keep researching for that next exploit which I wasn't previously aware of or is just out of my technical depth. Dog chasing tail kinda thing.
Also professionally: I've been avoiding SQL Server Integration Services, and I really should ramp up on that.
[1] http://www.catb.org/~esr/faqs/hacker-howto.html#skills1Learn to use a php framework.
I think it would be great to master stored procedures in SQL Server. I used them on a few projects a lot when I first discovered them but haven't really gone any further than that. I think mastering SQL in any way is an invaluable skill to have.
Regex, hate the damn things :(
I would really like the ability to create and fully implement a programming language. Not because I would want it to become the next big language but just for the invaluable experience it would provide.
ASP.NET: I do all sorts of application programming in .NET, but have just never ventured into the web world.
COM
Well, I guess its too late now.
Haskell, monads. Hacking the GPUs and/or Cell processor. Programming a FPGA in VHDL or Verilog. Ah, you asked for THE ONE. Mathematics (category theory, abstract algebra).
Functional Programming - from time to time I pick up Paul Graham's LISP book and then shortly afterwards I discover it's simply too hard and give up for a year or two.
One day I'll be in a place when I'm ready for it, no question.
Concurrency
Assembly language for 80386, 80486 processors.
Really, Thought i'll learn for just the thrill.
Havent gone further than 8085 in college
Program a mechanical robot.
Making time is the one programming skill I've always wanted to master but haven’t had time. ;)
Model Driven Architecture.
Artificial Intelligence, not the theory, but the practice... one can use a physic engine without knowing anything about physic (or with minimal knowledge). I want to work with AI the way I use physic engine.
Real-time programming
Test Driven Development. This is one of those things where it's really easy to learn the basic concepts, but much harder to get the hang of applying them in a real-world application. I think I'm right on the edge of it, but not there yet.
Sitting down and coding without having a reference (google).
Politics. Seriously.
I want to do LINUX KERNEL PROGRAMMING but couldnt find time for it.
There's a long list of languages I used, but for some reason I never got my head around assembler. I always wanted to learn assembler. I used it a little when coding graphics stuff in c/c++ on DOS, but only small portions to speed things up. I've always wanted to do my own operating system. Not with other bootstrappers and such others wrote, but my own. Just to learn how it works. Another thing I always liked where those 4k intros. They're another reason to learn assembler.
I'm planning on learning F# and Python this year. I've worked with python a bit about 6 or 7 years ago and I believe it's improved a lot. I think a lot can be done with Python and Silverlight.
I spend so much time finding stuff I want to learn more about, that I have hardly any left to actually sit down and learn them.
For the time being, I have these things on my mind:
Granted that list is fleeting and it is probably that I'll succeed in learning most of those items. But I also have one thing that I'd like to try but I'll probably never succeed at: Designing a general-purpose programming language.
Shaders, shadows, lighting and making the graphics look pretty. The concepts are easy to grasp but the code takes a lot more work. I'm a wannabe game developer and it's always demoralizing to see the next indie game looking as smooth and colorful as say, Mario Galaxy. I just keep telling myself that my stuff will sell as long as it's fun enough! paranoia paranoia
Functional programming [1] and Haskell [2]
[1] http://en.wikipedia.org/wiki/Functional_programmingThe concept of Monads in functional programming.
build an operating system
Graphics. I've mostly written Internet utilities, but if I knew graphics, I'd probably give a game a shot.
To make lots of money out of a program that I've written. some people seem to manage it, but I've never quite been able.
If anyone has any books on how to do this I'd be interested to read them :-)
shell scripting...but im trying now lol to learn it
Hardware description languages: VHDL or Verilog...
I'd say Biology's DNA. The most pouplar programming language of life. I just managed to create a most beautiful new life, but I had to use a very high-level IDE (if you know what I mean). I'd love to learn the basics...bio-engineering, low-level DNA assembly :)
I wonder what would Jon Skeet [1] write here as an answer..
[1] http://stackoverflow.com/users/22656/jon-skeetAs a server-side developer, I've always wanted to learn UI. Not just to draw some forms, But the whole client-side pack: UI patterns such as MVC, MVP, etc. Rendering & graphical objects.
Probobly it is just like learning any other programing skills, But never had time for it
Creating an OS like Windows Vista.......
Get hot and heavy into JavaScripting and using Web frameworks to do cool things with Web pages. That would be FUN!
Take the algorithms course, I never took in school.
A functional language.
I'm already fluent in SQL, Javascript, RegExps, ASM, machine-learning algorithms, multi-threading and Unit Testing. I once wrote a compiler in Haskell, just for fun, dammit!
So what's missing? COBOL!
First I learn COBOL, then I get a life.
Haskell, of course. I hope I can understand functional programming and ... become a computer scientist...
javascript. The pace of growth in this scripting language has been impossible to keep track of. Every day there's something new out there
Not really a skill I've always wanted to master, but something that occasionally would be the perfect technique, and when that happens I really hope I mastered it:
XPath
...as well as XSLT, regular expressions, and fluent Python scripting.
The thing is, I have learned a bit of these to solve some particular problems, but I don't use them regularly enough to keep them in my head. So, the next time I need them, I usually have to re-learn [1] even the basics, which sucks.
[1] http://www.w3schools.com/XPath/xpath_syntax.aspFour years after learning C++ and Java (and even more years after learning python) and being able to be quite productive in all these languages, understand (1) what OOP really is; (2) whether it's everything it's been hyped up (in my life) to be; (3) what the real benefits of OOP are.
Designing, coding, and implementing a high-performance, high-function file system.
actionscript and Adobe AIR
C and hack into the Minix, Linux or BSD kernels.
Finally learning Python! I'm still doing scripting in Perl, but I had wanted to make the switch a long time back ...
Web programming.
shell scripting
CAB for Winforms and now Prism for WPF
developp apps in c99 faster than it takes to developp them in java
Objective C and some iPhone programming
REALLY learning Emacs.
Stackless Python
It's F# and dynamic language.
Perl. It seems like I constantly need to whip together some essentially disposable script to manipulate a text file, which Perl is more or less perfect for, but I always have to knock something together in C or Java since I've never found the time to grasp what Perl has going on. I've even had the Larry Wall Perl book sitting on my shelf for the last year, but just haven't had the time.
Ability to understand low level properly. I was experimenting with assembler and processor instructions, but never developed something really useful although I was quite fascinated.
Functional programming.
Template meta-programming in C++
I can read some perl and 2 or 3 times I have got good enough to write with out constant reference to the book, but I do not use frequently enough to be able to use easily. (Less then once a year).
LISP.
MSN
Ruby, also delving into F#. Even javascript I'd like to master.
wait... that's 3. oops!
I'll stick with Ruby.
I never got the hang of C# and .NET and I know I'll have to catch up on it if I want to see myself as a webdev in a few years.
To all the people out there who wants to learn regular expressions, go look for "Sam's teach yourself regular expressions in 10 minutes", it's a good place to pick up the basics of it. I learned regex from that book in less than a week.
Parallel programming computational complexity. I'm curious how this gets measured and what techniques are there for determining optimal efficiency of sorting n elements over m processors and other fun theoretical problems.
I would like to fully understand the standard library in C++.
I have to admit that I upvoted about 6 of the answers here. I guess there is a lot that I would like to master and haven't spent the time.
My #1 would probably be Class Library Design. I feel like such a hack when it comes to designing a set of classes that work together. Is anyone ever happy with what they come up with?
Actually it's probably documentation, but I'll never get better at that. :)
I always wanted to get really good at matrix-math and do some hot 3d programming. I'm too busy programming banking software. Boo!
I still haven't mastered any aspect of programming. I'm good at some things, better at others, but I'm not a master in any discipline.
Learning as many of the new (mostly dynamic) languages for the JVM as possible, e.g. Groovy, JRuby, Scala, Jython, Newspeak, ...
I've never written an app that interfaces with a real DB.
I'm learning to do so on a web app that I'm writing. Everything I've done for work or fun has just used binary and text files for IO.
Learn to write a recursive descent parser. I trained as an electronic engineer, and these uppity CS graduates with their compiler skills get right up my nose :-)
I've been wanting to learn Ruby on Rails for a while now, but I never have the free time to do it.
Software reverse engineering, which means (for me):
This is very useful even when you don't really need to reverse engineer anything in your work, because it hones your debugging skills and furthers your understanding of program behavior, debugging, compilation, etc. to a very high level.
Plus, it's a fun challenge
I've wanted to hack into my car's ECU to be able to capture diagnostic codes, etc. I guess this falls under device driver programming.
3D graphics programming.
JavaScript would help me a lot in my actual work. With the todays web we can do almost anything with javascript.
Learning LUA (and become a famous WoW-Addons author) :)
Functional Programming
Find a practical use for functional programming.
Smalltalk, the original OO language, would be nice to learn. I'd like someone to explain Ruby to me, because just reading about it, I don't see why I'd want to switch. Also, multi-threading, which is just plain hard. And of course, I'd like to learn how to make awesome 3D games.
A language compiler and interpreter.
At the moment, Django and Catalyst. I've been becoming more interested in web frameworks lately.
game engine programming
I wold definetly say that after watching simon-peyton jones speak via google video a few times I'm quite inspired to learn Haskell. Not because I think it would lead to higher paying work, but because I believe it would help become a better programmer all around.
I'm learning a bit of Erlang at the moment and find it a bit easier to grasp than my first forays into learning Haskell, but with either of them the difficulty isn't the language, it is finding time to dedicate to learning these languages.
microsoft Silverlight
Regular Expressions
My bold answer is ... an operating system! I already bought the book of A. Tanenbaum, but didn't come much further than to read some of it. I think it's way too much to do for just one person and I don't want to end it like the hundreds of half-finished hobby OSes I found on the web. Although ...
Another topic would be to write some Android application, but here I'm missing any good idea on what that app. should do. If you have any ideas, let me know ...
Theorem proving applied to software. I've tried many times, and gotten decent success, but it seems like it should be a lot easier than it is.
Knowing java well enough that I could land into a senior dev role and go to town from start of project to finish and know what I was doing.
Writing bugless code.
Time management. Just never had the time to learn it.
Array programming: APL [1] and/or the J language [2]. It's very cool that Philippe Mougin worked some of the concepts into F-Script [3].
[1] http://en.wikipedia.org/wiki/APL%5F%28programming%5Flanguage%29more Design Patterns
Forth.
Both on its own merits, and because I've also wanted to write my own operating system and I think Forth looks like a better foundation than C.
virtual machine design
Brainfuck [1]! Mastery I guess is writing a brainfuck compiler in brainfuck.
[1] http://en.wikipedia.org/wiki/BrainfuckBecome a master of either theorem proving, model checking or concurrency calculi.
For me it would be JavaScript, coming from a Java, C++, C# background I just have a hard time wrapping my head around it.
Working with prolog and building AI applications
The proof of what is the relationship between P and NP would be an awesome thing to master and answer conclusively once and for all... mwahahahahaha....
After all, this is what we haven't mastered, right?
Erlang and use it to do large-scale cloud computing stuff
Compiler building...particularly for building external DSLs
It's a toss-up between learning to code for Apple platforms and learning the x86 instruction set.
Learn PHP and python.
Mathematical Modeling
Linux Kernel hacking
Learn all data structures.
Most of the DS that I know about are the ones I was taught at university. I hav always wanted to learn new ones. Having the right DS for your data makes the task a lot easy.
master back-in-time debuggers
make a chess game. (not the UI, but the AI)
find good static code analysis tools
Developing Firefox extensions.
I had many ideas on new extensions to develop, but I haven't had the time yet...
Dvorak, or some other optimized keyboard layout.
Learning Java, bought the book "Java How to Program, 7th edition" I understood things clearly but moving from a web scripting language (PHP) to this one seems like climbing a mountain. After learning Java and mastering it (so-so), make Android apps. I couldn't finish the book, there is just too much to cover =/ so I'm taking it slowly.
Make a game, one task that won't happen unless I find a group of people that shares the same vision.
Finally, a nightmare for me, javascript, I can't seem to stay sane everytime I start to practice. Bought the book "Simply Javascript" while the explanations were good, I couldn't bring myself to continue it for some reason.
3D Game Programming - like Quake, Final Fantasy etc.
Game theory [1]. It's not exactly a programming skill, but its applications are amazings
[1] http://en.wikipedia.org/wiki/Game%5FtheoryI'd like to learn C++ deeply.
Parallel programming. It is the future. However, I am tied up trying to master ASP.NET's huge API in .NET 3.5 (.NET 4 is coming soon while .NET 5.0 is in the early stages.) Plus, it is hard to convince people that matter to drive towards parallel computing when many customers' computers cannot support it.
I am not sure if this counts as a programming skill, but I would say vi or emacs.
Binary Trees, Hashtables, coding in Bash for Linux, Threading and Haskell :(
Master any languages i use daily without the need of copy and paste from others' code.
Bug-free programming
I keep trying to master Emacs and throw away all other text editors, but I just can't do it.
One thing I always wanted to do:
A few others:
I always wanted to master the 3d games programming language...i also started once but due to my hectic schdule.earlier college and now job i never made it up yet!!..but i will master it one day
Just getting the darn thing done.
Python. I know a fair bit of Python and can understand well written programs easily with a bit of reference by my side. But I am yet to write some good Python code without referring to the manuals now and then. But yes, I consider reading manuals as part of the learning process and will master the snake one day sooner than later !
The scary thing is that I've done almost all of the top 10 items mentioned here!
One skill I'd like to master is writing good requirements - this is important when communicating with both the customer and the development team, and stuff that goes wrong there costs a LOT of money and time.
I always wanted to learn Ruby, C++ and WPF (sooner or later I will learn this).
I would like to master regular expressions and xslt too (I know a little about each but I always end up looking on internet about them because I don't know enough to do what I need to do).
Pretty much anything in programming or computer science. .NET, C++, SQL, Sql Server, Functional programming, JavaScript, Unit Testing, Source Control, Object Oriented Analysis & Design, Design Patterns, Anything. I've learned a lot, but I've never mastered any of it. Even if I focused on just one, I don't think that I could ever truly master it... no matter how much time I spent on it...
Regards,
Frank
I've always wanted to develop a tool with a really well-thought-out, clean, beautiful user interface. Take some time and get it right.
I would like to get much better at exception handling - actually coming up with a way to gracefully handle exceptions rather than giving an error message to the end user that something bad happened. In many of my past projects, my manager was pushing me so hard to get the project done that all I "had time" to do was to notify that an error had happened and let the user try again...
I wish I could "master" the programming involved for hand-held devices (cell phones, Palm Pilots, BlackBerrys).
I've always wanted to know a protocal such as HTTP or TCP/IP inside out. I can get by on either one, but not an expert.
Unit tests - makes scaling up projects so much easier.
I've always wanted to improve my time management. Once I get that super efficient I guess I'd be able to learn whatever new programming skills I need.
Can't give one answer to this question, these are just off the top of my head:
"The lyf so short, the craft so long to lerne" - Chaucer
[1] http://en.wikipedia.org/wiki/Dynamic%5FprogrammingWant to learn how to write search engines.
Stuff on my todo list:
Looking at this list, it looks like I have enough to keep me occupied for the rest of my life!
I want to have a more intensive look at esoteric programming languages like Brainfuck, Java2k or Whitespace.
profiling and optimization
Learn to develop a new computer language. It's my dream to create a new computer language that can serve developers well.
Compiler construction
Ruby on Rails :| others ?
Haven't found a post where somebody said things like "cutting edge" digital image processing, ai, rasterization, ray-tracing, etc..
If you tried out CS 5 you saw what technology nowadays can do.. (for example content aware resizing) However there is more to come, also very interesting is the use of "snakes" (google: snakes image processing) so digital image processing is surely something that I would like to have a look at.
Always wanted to truelly learn ISAPI and DirectX
I have many answers to this question, but mainly, I would love to master a programming language so that I could know the answer to any question about it. That would account for many of my other desires that I have no time for.
Oh, i'd like to learn some spoke languages too. (SO I could write illegible comments in those langauges!
Learn unit testing.
That's an excellent question!
I'd like to improve my OO skills. But that's likely to happen with my next internships and that's where my career is leading me. I have a Perl and Bash.
I would love to be able to think about an idea, out of nowhere, and be able to implement it. Like : "Wouldn't it be nice to have a program that can process and output ?", and then implement it.
I also would like to take the time to look into the source code of some OSS, like GNOME, Firefox, Pidgin, etc.
Being a design pattern ninja.
I've always dug C++ because of it's insane flexibility, but I never got around to actually learn it since I've always had Delphi and C# jobs.
unit testing
There's so many...wait a minute...I guess I already know everything. :)
I would really like to study more about linux and other unix based systems like OS X. Kind of bored of the MS world.
JavaScript
unix C/C++ with inline ASM
Unit testing. Seems really useful and required for lots of jobs, but I'm worried that it could make my coding even slower (I can rarely write over 200 lines of Java/C# a day).
Developing application(s) that leverage collective intelligence of large groups of people with a common interest of set of interests.
Probably assembly...but that would demand a time I don't have right now.
Specific patterns & practices, IE Dependency Injection
the .Net GDI+ and accessing hardware through the HAL for device access (ever tried to write your own cd burning app?)
Got to agree with KevDog, Regular Expressions! I can do the very basics but there are times when I need something more heavy duty and usually end up emailing my friendly Regular Expression guru.
So many things to learn, so little time!
3d game programming.
Constraint Programming [1] / Constraint Satisfaction Problems [2]
[1] http://en.wikipedia.org/wiki/Constraint_programmingLike many previous posters I want to learn LISP as despite having both the Graham and the Seibel books I just haven't had the time to do anything with them. Also ARM7 assembly language programming as there are just so many powerful cheap microprocessors out there using this core that I really should be using.
JavaSript :) I'm a little bit disgusted by this language, but I think to really learn it, might help me.
SQL/Databases -- figuring out how to optimize reliably, how to work well with the very large datasets that are part of my day to day working life
I'd have to say writing compilers and parse systems. Never had those courses back in college and haven't been able to take the time to read through some of the bibliography I've been building since then about the topic. But, alas, there is always a new day tomorrow.
I would like to fully master how to program the grafics cards shaders.
Scripting languages such as Python, Perl, and Lua.
Regular Expressions...Damm always need google for it
Rspec. I've got the handle on Ruby unit/functional tests, but Rspec syntax does my head in.
I want to develop some web clawing application.
I've always wanted to get into gaming programming. It would be a far stretch from the COBOL I work with on a daily basis now, but I would still like to. I've written a few simple games in the past, but nothing like the 3d wonders they create today. I'm not really sure if I'd like it or not, but I would like to learn it.
Assembly Not sure it relevant anymore generally, but someone has to write to the metal.... looks neat to but I realise you have to so much little stuff to get the big stuff done.
RegEx I wonder if another language would be better suited though. I don't think it is productive to edit or debug something that looks like random ascii characters.
I agree, Regex really..
The ability to turn mathematical definitions easily into working code.
To use KISS, Keep It Simple Stupid. I'll like to use that phrase some more when I'm writing code or refactoring.
Assembly, FTW. I really dig those demo programs that can do wicked 3d stuff with audio and whatnot, but they only take up but a few K. Its awesome. I wish I had time!
I have always wanted learn enough about cryptography to build my own encryption/decryption scheme. Unfortunately, members of System.Security.Cryptography are just too darn easy to implement.
For me this is currently the application of machine learning techniques: the application of conditional probabilities, creating and using classifiers (eg: bayesean spam filtering), and genetic algorithms. I think I see a wide variety of situations where I see these being applicable, I just don't have the same internalized instinctual feel for how to apply them.
I also am working through getting better at SDLC basics (planning, estimation, creating specifications), and better engineering practices (test driven development, being diligent about using coverage analysis and profiling tools).
i know web dev but can't understand C / C# / C++
nice topic :)
AJAX frameworks and alternative architectures such as MVC