První smrtelný hřích

Ve svém článku o mailování z ASP.NET 2.0 jsem napsal, že posílání mailů v HTML považuji za druhý nejhorší programátorský hřích. Tato zmínka vyvolala předpokládané dotazy, jaký že je tedy ten první nejhorší hřích, jakého se dle mého názoru může .NET vývojář dopustit.

Když se podíváte do diskusních fór a konferencí, najdete poměrně dost dotazů typu: Jak může moje ASP.NET aplikace pracovat se systémovým registrem na klientově počítači? Jak mohu zakázat použití tlačítka „Zpět“ v prohlížeči? Jak poznám, že uživatel opustil stránku zavřením prohlížeče, aniž by se odhlásil?

Na takové otázky se nedá odpovědět, protože jejich tazatel zcela zjevně nepochopil samotný princip webových aplikací. Ubohý programátor, izolovaný od komunikačního protokolu vrstvami ASP.NET abstrakcí, netuší nic o principu a povaze toho, s čím pracuje. Panensky nepostižen informacemi o bezstavovosti HTTP a omezeními HTML nadává, že ASP.NET jsou hloupé a neumožňují mu udělat to, co slíbil šéfovi.

Je nám znám případ firmy, která pro svůj silně zatěžovaný databázový server sice zakoupila hromadu paměti a několik procesorů, ale pouze jeden disk, na němž je operační systém, data, logy zálohy…

Prvním smrtelným programátorským hříchem je podle mne týrání počítačů. Takové týrání může mít mnoho podob, ale příčina bývá obvykle tatáž: hloupost a naprostý nezájem vědět něco o použité technologii.

Důsledky těchto hříchů jsou závažné a dalekosáhlé. Programátoři či administrátoři ztratí hodiny řešením neřešitelného problému. Systém je pomalý a uživatelé nadávají. Aplikace funguje jenom v poslední verzi prohlížeče a to pouze každé liché úterý od tří do pěti. Hardware nakupovaný dle hesla „co nejde silou, jde ještě větší silou“ stojí hromadu peněz, aniž by se tato investice nějak pozitivně projevila…

Jak prvnímu smrtelnému hříchu předcházet? V první řadě tím, že se naučíte něco o principech technologie, kterou používáte. Nemyslím syntaxi programovacího jazyka a názvy tříd, ale filozofii a architekturu.

Pokud tak učiníte, dosáhnete vyššího stupně osvícení, kdy budete schopni rozhodnout, kdy kterou technologii použít. Nemůžete-li žít s tím, že uživatelé mohou otevírat nová okna a používat tlačítko „Zpět“, pak je nesmysl psát danou aplikaci jako webovou. Někdy – ne vždy – existují kličky a smyčky, které vám umožní dané omezení „obejít“, třeba pomocí klientských skriptů a podobně. Výsledek však pravidelně bývá takový, jako když vrut místo zašroubování do prkna namlátíte velkým kladivem. Bude to na první pohled vypadat jak má, ale pouze do okamžiku kdy své dílo podrobíte reálné zátěži. Pak se ukáže, že zatlučené šrouby nedrží.

Titulek:
Text komentáře:
Vaše jméno:
Váš e-mail: (nebude zveřejněn)

WWW stránka:
Opište text z obrázku:

Zajímavé je, že druhý největší programátorský hřích vůbec není programátorský :)

odpovědětodpovědět Gravatar

mailování z ASP.NET 2.0

15.3.2006 22:04:0915.3.2006 22:04:09 PetrPetr ---.net.upc.cz

Co se týká mailování z ASP.NET 2.0, je to pěkný článek ovšem System.Net.Mail nějak nechce posilat online emaily - respektive je rozešle až po zavření aplikace :-/

odpovědětodpovědět Gravatar

RE: mailování z ASP.NET 2.0

Čemu mám rozumět "až po zavření aplikace"? Jaké aplikace? Webové?

odpovědětodpovědět Gravatar

RE: mailování z ASP.NET 2.0

16.3.2006 11:28:5616.3.2006 11:28:56 HanzHanz ---.alphanet.cz

Asi jde o tenhle problém: http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=166439&SiteID=1

Bohužel nemá řešení...

odpovědětodpovědět Gravatar

RE: mailování z ASP.NET 2.0

Aha, s tím jsem se zatím nepotkal. Ale ono obcně posílat maily z webu přes SMTP není moc dobrý nápad, pickup je lepší.

odpovědětodpovědět Gravatar

RE: mailování z ASP.NET 2.0

16.3.2006 15:38:0016.3.2006 15:38:00 HanzHanz ---.alphanet.cz

Ano, ale webhosting s pickupem na Psovi bohuzel neni.

odpovědětodpovědět Gravatar

RE: mailování z ASP.NET 2.0

Nojo, když si holt jako webhostera vyberete tohle, pak je každá rada drahá...

odpovědětodpovědět Gravatar

RE: mailování z ASP.NET 2.0

Co doporučujete za webhosting pro ASP.NET?

odpovědětodpovědět Gravatar

RE: mailování z ASP.NET 2.0

Situace na trhu českého web hostingu mne už před osmi lety přiměla, abych si na páteř dal vlastní server. Přijde mi, že většina hosterů v CZ vůbec neví, čehož činí, takže jejich servery jsou současně omezené pro zákazníka a nedostatečně zabezpečené.

Navíc sám nejsem objektivní, protože hosting provozujeme taky (víceméně z nouze pro ty, kdo k nám utekli).

odpovědětodpovědět Gravatar

RE: mailování z ASP.NET 2.0

22.3.2006 22:13:0922.3.2006 22:13:09 azaz ---.isp.t-mobile.cz

Na českém hostingovém poli je to opravdu bída, nejlépe z toho ještě vychází Dotnethosting, kdybyste ale někdo věděl o něčem dobrém, dejte vědět.

odpovědětodpovědět Gravatar

RE: mailování z ASP.NET 2.0

Zdravím, nejprve musím Vám poděkovat co děláte pro ASP.NET komunitu v ČR a na Slovensku, neznám podobně zaměřený server.

Sám využívám některé modifikace Vašich nástrojů jako je třeba NEMESIS Express či diskuze v XML.

Co se týká hostingu, tak pro začínající vývojáře je výborný free hosting na www.aspweb.cz. A i placené verze hostingu jsou na tomto serveru dostatečné...

odpovědětodpovědět Gravatar

RE: mailování z ASP.NET 2.0

Neběží vám tam nějaký příliš geninální antivir který filtruje i SMTP komunikaci?

Narazili jsme na podobné chování ve spojení s Norton Antivirem. Geniální antivir se rozhodl, že SMTP komunikaci nepustí dál dokud ji důkladně nezkontroluje a dokud neskončí. Bohužel blbě detekoval konec komunikace a čekal až program, který mail posílá skončí.

odpovědětodpovědět Gravatar

HMTL email

10.4.2006 13:11:5410.4.2006 13:11:54 Petr KoulaPetr Koula ---.kolej.tul.cz

Tento clanek u me pro zmenu vyvolal dotaz, proc je druhy programatorsky hrich hrichem. Sice jsem to tvrzeni z voleje prijal za fakt, nicmene me nyni zajima, proc je tomu tak. Na webu se objevuji opacne nazory ruznych "hrisniku" ;)

  • Altairis
  • Nemesis
  • Microsoft MVP
  • IIS
  • ASP.NET