• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 10:55
CEST 16:55
KST 23:55
  • Home
  • Forum
  • Calendar
  • Streams
  • Liquipedia
  • Features
  • Store
  • EPT
  • TL+
  • StarCraft 2
  • Brood War
  • Smash
  • Heroes
  • Counter-Strike
  • Overwatch
  • Liquibet
  • Fantasy StarCraft
  • TLPD
  • StarCraft 2
  • Brood War
  • Blogs
Forum Sidebar
Events/Features
News
Featured News
TL.net Map Contest #22 - Voting1Code S Season 2 (2026) - RO8 Preview4[ASL21] Finals Preview: Two Legacies21Code S Season 2 (2026) - RO12 Preview2herO wins GSL Code S Season 1 (2026)7
Community News
StarCraft II 5.0.16 PTR Patch Notes may 26th51Weekly Cups (May 18-25): MaxPax wins doubles0Crank Gathers Season 4: BW vs SC2 Team League4Weekly Cups (May 11-17): Classic wins double0Code S Season 1 (2026) - RO8 Results2
StarCraft 2
General
StarCraft II 5.0.16 PTR Patch Notes may 26th Changing from 12 to 8 is just asking for StarCraft TL.net Map Contest #22 - Voting herO wins GSL Code S Season 1 (2026) Code S Season 2 (2026) - RO8 Preview
Tourneys
GSL Code S Season 2 (2026) Sparkling Tuna Cup - Weekly Open Tournament Crank Gathers Season 4: BW vs SC2 Team League GSL Code S Season 1 (2026) Maestros of The Game 2 announcement and schedule !
Strategy
[G] Having the right mentality to improve
Custom Maps
[D]RTS in all its shapes and glory <3 [A] Nemrods 1/4 players
External Content
Welcome to the External Content forum Mutation # 527 Hell Train The PondCast: SC2 News & Results Mutation # 526 Rubber and Glue
Brood War
General
Pros React To: ASL S21 Finals Every Matchup's Top 5 Winrates (all ASLs & KSLs) BW General Discussion Very long shot - StarCraft x A7X video Pros React to: TvT Masterclass in FlaSh vs Light
Tourneys
[ASL21] Grand Finals Escore Tournament StarCraft Season 2 [BSL22] WB Final & LB Semis - Saturday 21:00 CEST Small VOD Thread 2.0
Strategy
Any training maps people recommend? Muta micro map competition [G] Hydra ZvZ: An Introduction Fighting Spirit mining rates
Other Games
General Games
Nintendo Switch Thread Tiranga Gaming Color Prediction ZeroSpace Megathread Stormgate/Frost Giant Megathread Path of Exile
Dota 2
Official 'what is Dota anymore' discussion
League of Legends
Heroes of the Storm
Simple Questions, Simple Answers Heroes of the Storm 2.0
Hearthstone
Deck construction bug Heroes of StarCraft mini-set
TL Mafia
Vanilla Mini Mafia Mafia Game Mode Feedback/Ideas TL Mafia Community Thread Five o'clock TL Mafia
Community
General
US Politics Mega-thread Things Aren’t Peaceful in Palestine Russo-Ukrainian War Thread Trading/Investing Thread Dating: How's your luck?
Fan Clubs
The herO Fan Club!
Media & Entertainment
[Manga] One Piece Anime Discussion Thread [Req][Books] Good Fantasy/SciFi books
Sports
2024 - 2026 Football Thread McBoner: A hockey love story TeamLiquid Health and Fitness Initiative For 2023 Formula 1 Discussion
World Cup 2022
Tech Support
Computer Build, Upgrade & Buying Resource Thread Facing Challenges in Mobile App Development
TL Community
The Automated Ban List
Blogs
Customization Drives Loyalty…
TrAiDoS
Why RTS gamers make better f…
gosubay
ramps on octagon
StaticNine
ASL S21 English Commentary…
namkraft
Customize Sidebar...

Website Feedback

Closed Threads



Active: 2251 users

[P] The Good, the Bad and the Ugly

Blogs > Taiche
Post a Reply
Taiche *
Profile Blog Joined December 2004
France1963 Posts
Last Edited: 2007-08-14 14:10:35
August 14 2007 13:45 GMT
#1
Seeing this phrase as Grubby's blog post title, I thought "that could work for the programming world too" because it defines the categories of programmers quite well :D Note that these categories sometimes overlap (the Good can be Ugly more often than not ).
Note : the people I list in each category as examples are because of personal experience. I do not know the entire community fo SC programmers so if you feel "forgotten" then it's because I don't know you or your skills enough to put your name in here. Do not take it personnally


I - The Good

[image loading]


This is the kind of programmer you encounter sometimes. To me, they are not rare or but they aren't common as well. I have been lucky to have 2 of them in my team (out of 4-5 people back then) at work and it was quite a relief because they both have 2 different areas of expertise.
This kind of programmer is considered "good at what he does" because he has a great knowledge of what he is talking about but is also humble enough to admit when he makes a mistake. He generally knows where to find information and is not afraid to try lots of things that can potentially damage his system just for test purpose And most of the time his system remains healthy.
The main problem with that kind of people is that sometimes they have social issues like being unable to work in a team or go ask people for advice. Of course, this is not true 100% of the time but that happens. Another problem is that he won't be very excited when told to do something he doesn't think is appropriate (because "it's not the way it should be done").
Therefore, having to manage such kind of programmer can be tricky ; you have to take care of him because of his expertise and knowledge but sometimes it is necessary to push him a bit because of the constraints of the project (the customer wants that, the company wants that, etc...).
In the SC community : Ashur, Ilintar, JCA.


II - The Bad

[image loading]


The Bad can take many forms. In my opinion, the worst is the scornful one that not only despise other people's work but think that their way of doing is the best. It is really a pain to have to work with this kind of guys because 2-hour-long arguments are not enough to prove them wrong -_-; And if something fails when going their way, then it's other people's fault. Again, that kind of people is quite uncommon but each time I've had to work with it was painful.
In the SC community :
[image loading]
TIGER !


III - The Ugly

[image loading]


Now here's the common type of programmer Ugly programmers produce ugly code which can be "slightly weird" to "totally incomprehensible". You have to understand that programming is like politics : there are very little people that think exactly the same as you. In programming, not only the logic can be different but also the syntax as well ; mix that with some misconceptions, differences in the knowledge level and design flaws and you have the main reasons why every code can look ugly to any programmer that didn't write it
But of course, there are some programmers who can reasonably be called "objectively ugly" as their code is almost unanimously judged ugly by other coders. You can find some examples at The Daily WTF where ugly code is posted every day. Worth a look for some laugh if you have a small grasp at basic programming languages and basic algorithm notions
That kind of people generally has no clue why he programmed something the way he did and doesn't really care if it's good or not. He probably will redo the same mistakes again and again, just because he isn't much interested in it. He just wants to see a result and doesn't care the way it was done. Too bad.
In the SC community : JCA :D (slightly) and "The guy that wrote that unpack.cpp code in bwreplib" -_-;


IV - The Gem

[image loading]

(yeah, easy one)

And there's this final un-announced category, the guy you meet once or twice in a lifetime that combines the qualities of the Good without having any flaw of the Bad or the Ugly and who is nice and humble. I have for myself seen that kind only once and it was chrisbk. For those who don't know about him, I will soon make a post.
Sometimes you can encounter someone very good but also full of himself. In that case, I'll put him into the "Good" category and not here because humility is maybe what makes that kind of people so admirable.
There isn't much more to say about this category except that if you are a programmer and are lucky enough to meet a Gem, then you surely have to learn a lot from him.

*****
Manifesto7 Uses ReXplorer, and so should you! : http://repasm.net/rx/
sundance
Profile Blog Joined May 2004
Slovakia3201 Posts
August 14 2007 14:07 GMT
#2
Excellent post. I so knew it that unpack.cpp is going to be mentioned in the Ugly part .

I love your blog and I hope for more and more quality posts about programming.
Nick Cave & the Bad Seeds
Taiche *
Profile Blog Joined December 2004
France1963 Posts
Last Edited: 2007-08-14 14:09:23
August 14 2007 14:09 GMT
#3
Haha, thanks :D
Yeah, the first time I saw that unpack thing I was like "WTF ?" Luckily, x6.rocketeer (on BWP) sent me some info about it like 1 year and a half ago and I have taken another look at it recently so that ugly piece of code will soon be replaced
Manifesto7 Uses ReXplorer, and so should you! : http://repasm.net/rx/
KwarK
Profile Blog Joined July 2006
United States44018 Posts
August 14 2007 16:55 GMT
#4
I read about an awesome bit of ugly programming online somewhere though I forget where.
Basically for a program to read the first letter is simply reads it. To read the second letter it reads the first, then the first then the second. To read the third it reads the first, the first again, then the second, then the first again, then the second again, then the third. And so forth. The program did the job but there was insufficient processing power in the world to make it work. :D
ModeratorThe angels have the phone box
Taiche *
Profile Blog Joined December 2004
France1963 Posts
August 14 2007 17:06 GMT
#5
Haha, I can think of a way to do that twisted job and that really means the guy who coded it didn't have a clue on how the file access functions/objects work :D
Manifesto7 Uses ReXplorer, and so should you! : http://repasm.net/rx/
PePe QuiCoSE
Profile Blog Joined March 2006
Argentina1204 Posts
August 14 2007 20:22 GMT
#6
keep them coming :-)
Please log in or register to reply.
Live Events Refresh
Next event in 1h 5m
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
ByuN 674
RotterdaM 597
Rex 134
ProTech81
StarCraft: Brood War
Sea 2307
Horang2 1592
Jaedong 1144
EffOrt 1070
Light 427
Mini 373
BeSt 365
ggaemo 314
Soulkey 280
actioN 266
[ Show more ]
Zeus 163
Rush 156
Sharp 125
hero 75
Mong 61
Sea.KH 48
JYJ 47
Sexy 45
ToSsGirL 44
sorry 38
Barracks 30
Sacsri 30
Terrorterran 27
Rock 20
GoRush 18
soO 17
Dota 2
qojqva1475
Counter-Strike
fl0m455
Heroes of the Storm
Khaldor121
Other Games
singsing2973
hiko997
B2W.Neo895
Lowko520
Beastyqt499
DeMusliM240
QueenE71
Liquid`VortiX69
Mew2King63
KnowMe36
Trikslyr6
fpsfer 1
Organizations
StarCraft 2
ComeBackTV 694
WardiTV679
Counter-Strike
PGL228
Other Games
BasetradeTV185
StarCraft 2
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
[ Show 18 non-featured ]
StarCraft 2
• StrangeGG 84
• poizon28 21
• Gemini_19 15
• Kozan
• LaughNgamezSOOP
• AfreecaTV YouTube
• sooper7s
• intothetv
• Migwel
• IndyKCrew
StarCraft: Brood War
• STPLYoutube
• ZZZeroYoutube
• BSLYoutube
Dota 2
• HappyZerGling44
League of Legends
• Nemesis3139
• Jankos2268
• TFBlade1056
Other Games
• WagamamaTV293
Upcoming Events
Big Brain Bouts
1h 5m
Shino vs Scarlett
Bly vs DnS
Serral vs ByuN
Replay Cast
9h 5m
RSL Revival
16h 5m
Lambo vs SHIN
Solar vs Rogue
herO vs Clem
Maestros of the Game
20h 5m
IPSL
1d 1h
ZZZero vs WorsT
Julia vs eOnzErG
BSL
1d 4h
TerrOr vs Dewalt
Bonyth vs eOnzErG
Replay Cast
1d 9h
RSL Revival
1d 16h
Maestros of the Game
1d 22h
OSC
1d 22h
[ Show More ]
IPSL
2 days
Dragon vs Artosis
dxtr13 vs Hawk
BSL
2 days
Wardi Open
2 days
Monday Night Weeklies
3 days
Replay Cast
3 days
Sparkling Tuna Cup
3 days
WardiTV Spring Champion…
3 days
Maestros of the Game
4 days
The PondCast
4 days
Maestros of the Game
5 days
Replay Cast
5 days
Replay Cast
5 days
WardiTV Spring Champion…
5 days
Maestros of the Game
6 days
Replay Cast
6 days
Liquipedia Results

Completed

ASL Season 21
2026 GSL S1
Heroes Pulsing #1

Ongoing

2026 KK StarCraft Pro League
BSL Season 22
IPSL Spring 2026
KCM Race Survival 2026 Season 2
KK 2v2 League Season 1
Acropolis #4
CSCL: Masked Kings S4
Escore Tournament S2: King of Kings
SCTL 2026 Spring
WardiTV Spring 2026
2026 GSL S2
RSL Revival: Season 5
Stake Ranked Episode 2
CS Asia Championships 2026
Asian Champions League 2026
IEM Atlanta 2026
PGL Astana 2026
BLAST Rivals Spring 2026
IEM Rio 2026
PGL Bucharest 2026
Stake Ranked Episode 1
BLAST Open Spring 2026

Upcoming

YSL S3
BSL 22 Non-Korean Championship
CSLAN 4
Blizzard Classic Cup 2026
Kung Fu Cup 2026 Grand Finals
CranK Gathers Season 4: BW vs SC2 Team League
HSC XXIX
uThermal 2v2 2026 Main Event
Maestros of the Game 2
Heroes Pulsing #2
Bounty Cup 2026
BLAST Bounty Summer 2026
BLAST Bounty Summer Qual
Stake Ranked Episode 3
XSE Pro League 2026
IEM Cologne Major 2026
TLPD

1. ByuN
2. TY
3. Dark
4. Solar
5. Stats
6. Nerchio
7. sOs
8. soO
9. INnoVation
10. Elazer
1. Rain
2. Flash
3. EffOrt
4. Last
5. Bisu
6. Soulkey
7. Mini
8. Sharp
Sidebar Settings...

Advertising | Privacy Policy | Terms Of Use | Contact Us

Original banner artwork: Jim Warren
The contents of this webpage are copyright © 2026 TLnet. All Rights Reserved.