![]() |
|
|
|
Registered Loser
Join Date: May 2001
Location: Worcester, MA
Posts: 2,392
|
Question For The Uber Geeks
I've been programming computers for almost 2/3 of my life. And I have always made it a point to delve deeply into the theory of software design and try to write code that Dr von Neumann, himself, would be proud of. Merely functional code has never been sufficient for me. I have always wanted my code to be elegant, painfully easy to understand and, if possible, beautiful.
To that end, I've always sought out examples of top shelf code from other people so I could learn from it. In whatever language I've used, I tried to keep copies of perfectly written code snippets on hand to be reviewed, refined, and re-used again and again. So lately I have been coding in C#. Nice language. Not exactly the most challenging thing in the world. But that's okay. It works. And I am really trying to dig deeply into the structure of C#'s oop world to try to make this language sing. Unfortunately, the coding examples I see on the internet were mostly written by dyslexic monkeys on acid. And the "Standard and Practices" websites I have found mostly focus on variable naming conventions and indenting. And that stuff only scratches the surface of what makes an elegant program. So can anyone point me towards a resource that really digs deeply into the theory of oop design in general and C# in particular? I mean, any moron can make this stuff work...and clearly many do. But where do the real hardcore techie geeks hang out and get down with oop algorithms and esoteric theory?
__________________
Owner of a wrecked 944 Last edited by Wrecked944; 06-15-2006 at 08:38 AM.. |
||
![]() |
|
Too big to fail
|
Can't really help you. Honestly, I write fairly simple code, just complicated enough to get the job done - no obfuscation contests for me. Why? Because some time in the future, I might have to go back in and fix/enhance it.
I guess that makes me a moron ![]() For the record, you'll probably find the uber techie geeks hanging out (living) in their parents' basement, when they're not working on thir 944 or 951. ![]()
__________________
"You go to the track with the Porsche you have, not the Porsche you wish you had." '03 E46 M3 '57 356A Various VWs |
||
![]() |
|
Registered Loser
Join Date: May 2001
Location: Worcester, MA
Posts: 2,392
|
Quote:
![]()
__________________
Owner of a wrecked 944 |
||
![]() |
|
Unoffended by naked girls
|
Quote:
![]()
__________________
Dan 1969 911T (sold) 2008 FXDL www.labreaprecision.com www.concealedcarrymidwest.com |
||
![]() |
|
Moderator
|
Re: Question For The Uber Geeks
Quote:
![]() I do a little amount of coding, but it's in REXX on Z/OS (Mainframe). Mostly storage related stuff and manipulation of tables to create source code. My own personal guidelines for coding (as learned in my impressionable college years) have been: 1. Documentation is key. Especially with languages that are 'self-documenting' ![]() 2. A procedure should have only one function. 3. The main program (whatever it's called in your language) should only contain priming of variables and calls to procedures. 4. Variables should have logical names. (skippy=12 is NOT a logical name, but Gigabytes_used=12 IS.) ![]() 5. When debugging, don't expect different results if you haven't changed anything. -Z-man.
__________________
2010 Cayman S - 12-2020 - 2014 MINI Cooper S Coupe - 05-17 - 05-21 1989 944S2 - 06-01 - 01-14 Carpe Viam. <>< |
||
![]() |
|
Registered
|
With all due respects do not use C#, Dr. Vonn Neumann and good code in the same sentence
![]() Anything after C does not go with my theory of good code or good use of machine resources, I am at heart an assembler kind of guy, that may explain why I quit developing many years ago. Go no further and check Dr. Donald Knuth Art of Computer Programming series
__________________
Jordi Riera '84 930 (modified) |
||
![]() |
|
Back in the saddle again
Join Date: Oct 2001
Location: Central TX west of Houston
Posts: 55,881
|
I'm a techie, but of another sort. All of this talk of programming made my eye's glaze and all I heard was:
waaah, waaah wah waaahahha waa wah waaaahh. Takes a special breed. Like being a cop or in the military, I'm glad someone wants to do it so I don't have to.
__________________
Steve '08 Boxster RS60 Spyder #0099/1960 - never named a car before, but this is Charlotte. '88 targa ![]() |
||
![]() |
|
B58/732
Join Date: Feb 2000
Location: Hot as Hell, AZ
Posts: 12,313
|
Knuth.
Also "Patterns in Programming" or something along those lines.
__________________
ΜΟΛΩΝ ΛΑΒΕ I don't always talk to vegetarians--but when I do, it's with a mouthful of bacon. |
||
![]() |
|
Registered
|
Well, there are developers and there are programmers.
Most of my clients couldn't care less that I made one line of code prettier than another. They want it to work, be supportable, with as quick a time to market as possible. That being said, I wrote several MFC C++ apps, and they don't hold a candle to the rapidity with which I can throw a .net c#/vb.net app together. I recently wrote a web service that talks to handheld pc's for data collection in an hour! That's the whole SOAP communication layer for the project. That's pretty good. Now I know, will my c# compile into the most efficient clr (common runtime language) over something hand-written in c++? Probably not. Cost wise, time to market-wise, .net CLR is awesome.
__________________
David Avery 05 Lotus Elise (sold) | 08 BMW 135i visit FocusedE, my e-business company | visit Spyderclub |
||
![]() |
|
Feelin' Solexy
Join Date: Oct 2003
Location: WA
Posts: 3,786
|
I too have had a hard time finding really elegant C# code.
I have always been amazed by some of the code that PERL programmers can pump out...that stuff can be elegant beyond belief.
__________________
Grant In the stable: 1938 Buick Special model 41, 1963 Solex 2200, 1973 Vespa Primavera 125, 1974 Vespa Rally 200, 1986 VW Vanagon Syncro Westfalia, 1989 VW Doka Tristar, 2011 Pursuit 315 OS, 2022 Tesla Y Gone but not forgotten: 1973 VW Beetle, 1989 Porsche 944, 2008 R56 Mini Cooper S |
||
![]() |
|
Cars & Coffee Killer
Join Date: Sep 2004
Location: State of Failure
Posts: 32,246
|
Good design is key. Good code should just be following good design. Good design should contain coding standards, but also standards for the use of objects, attributes, instances, whether to make methods class methods or instance methods.
IMO, once you apply good design principals to a business problem, the design of the application should be pretty apparent.
__________________
Some Porsches long ago...then a wankle... 5 liters of VVT fury now -Chris "There is freedom in risk, just as there is oppression in security." |
||
![]() |
|
Cars & Coffee Killer
Join Date: Sep 2004
Location: State of Failure
Posts: 32,246
|
Quote:
And we're only living in our parents basements in markets like CA because we're accumulating cash to swoop in and buy houses after the big RE bust.... ![]()
__________________
Some Porsches long ago...then a wankle... 5 liters of VVT fury now -Chris "There is freedom in risk, just as there is oppression in security." |
||
![]() |
|
![]() |
Registered Loser
Join Date: May 2001
Location: Worcester, MA
Posts: 2,392
|
Quote:
I've always believed that OOP was nothing new...only a regular old sequential statement paradigm wrapped in a set of fancy function calls. But that does not absolve us of the responsibility to take full advantage of the OOP mindset. Simply throwing code into class definitions isn't enough (at least not for me).
__________________
Owner of a wrecked 944 |
||
![]() |
|
Registered
|
Quote:
I always try to make my code as perfect as possible. My boss teaches Java and Perl, and has written several books on the subject, so I everything I write always goes through the mental, 'what will Marc think when he sees this,' filter. I know nothing about C# and have avoided it as much as possible. I'm mostly doing Ruby these days. I've been unable to find decent resources that even explain some best practices Ruby, and forget trying to find useful documentation on DRB (at least, until our book comes out). ![]()
__________________
1983 944 - Sable Brown Metallic / Saratoga / LSD : IceShark Light Kit |
||
![]() |
|
Registered
|
A ColdFusion friend just send this my way... might be able to find something, but I haven't used it before. http://krugle.com/
__________________
1983 944 - Sable Brown Metallic / Saratoga / LSD : IceShark Light Kit |
||
![]() |
|
Monkey+Football
|
Quote:
__________________
<Insert witty comment> 85 Targa Wong Chip Fabspeed M&K Bilsteins and a bunch of other stuff. |
||
![]() |
|