Skip navigation.

exploreopera

| Help

Sign up | Help

Bezsensowne wypociny Michasia

Tymczasowo się gdzieś zapodziały...

Posts tagged with "design"

Standard MC

,

Dla formalności, MC jest skrótem od Micro Computer.

Jednostki centralne współczensych komputerów składają się w większości z 3 elementów: procesora głównego, płyty głównej i karty graficznej. Czasami, bardzo sporadycznie, dodawane są jeszcze karty muzyczne i telewizyjne. To jednak, co oferuje współczensny standard ATX, jest dostosowane do zupełnie innych realiów. (Standardy μATX i FlexATX są pod tym względem tylko nieznacznie lepsze.)

Największym problemem standardu ATX (i jego odmian) jest chłodzenie. Nie przewidziano w nim przepływu powietrza. Problem z głównym procesorem udało się jakoś rozwiązać. Najważniejsza kwestia dotyczy jednak karty graficznej. Kiedy powstawał standard ATX, owe układy zadowalały się tak małą ilością watów, że nie wymagały chłodzenia. Obecnie to się zmieniło.

Kolejnym problemem jest liczba kart rozszerzeń. Procesor główny ma swój dedykowany socket (podobnie jego pamięć). Poza tym mamy przewidziane miejsce na 7 kart rozszerzeń o pełnej długości, z czego jedna karta graficzna potrzebuje do 2. Pozostałe, niezbędne układy zostały umieszczone bezpośrednio na płycie głównej.

Pełnowymiarowe karty rozszerzeń w postaci kart graficznych są obecne na rynku. Przeciętna obudowa ATX nie przewiduje jednak na nie miejsca i pojawiają się problemy. Z tego powodu owe karty nie są często spotykane. Owe miejsce zostało bowiem zagospodarowane na zatoki dla urządzeń 3,5” i 5,25”, zazwyczaj mamy ich po cztery. Przeciętnej osobie wystarcza po jednej takiej zatoce.

W efekcie w obudowie mamy dużo pustego miejsca, a przepływu powietrza jak nie było, tak nie ma. W międzyczasie pojawiło się kilka alternatyw, w mojej ocenie były jednak zbyt mało rewolucyjne. Pomyślałem więc sobie, że opracuję sobie standard MC, który będzie rewolucyjny, potem będę się zaś smucił, że nikt go nie wprowadził.

Pierwszą, istotną rzeczą, jaką bym wprowadził, byłaby zmiana welkości kart rozszerzeń. Zwiększyłbym dwukrotnie ich grubość, aby zrobić miejsce na systemy chłodzenia (i wylot powietrza), względnie dodatkowe wyprowadzenia z tyłu. Skróciłbym też ich maksymalną długość. Do tego wystarczy jeszcze wymuszenie w specyfikacji, aby karta rozszerzeń mogła sobie pobierać powietrze z przodu obudowy.

Kolejną, istotną zmianą byłoby przeniesienie procesora na kartę rozszerzeń. Po zmianach powinno być dostatecznie dużo miejsca na chłodzenie. Pamięć RAM powinna też się tam zmieścić, może będzie trzeba nieznacznie podwyższyć karty.

Na kartę rozszerzeń powróciłyby też kontrolery dysków twardych, portów USB, Ethernetu i głośników. Po zmianach na śledziu karty powinno być dostatecznie dużo miejsca. Poza tym stare porty poszłyby na zasłużoną emeryturę.

Na płycie głównej zostałoby wtedy już niewiele do umieszczenia, dzięki temu będzie można drastycznie ograniczyć jej wielkość i same koszty. W dodatku jeden rodzaj płyty głównej będzie mógł obsłużyć wszystkie rodzaje procesorów, mniej i bardziej wymagających nabywców. Podstawowy model miałby 4 miejsca na karty rozszerzeń. Na chwilę obecną najlepiej by się sprawdziły 4 sloty PCIe x16, choć może to wymagać trochę więcej analiz.

Kolejnym elementem, jaki należałoby zmodernizować, są napędy 5,25”. Ich pełna specyfikacja pozwala na robienie ich zbyt długimi i wysokimi. Napędy CD w notebookach są znacznie niższe, więc bez problemu można by było obniżyć je i w stacjnarnych komputerach. A maksymalna długość i tak nie jest wykorzystywana, więc można ją skrócić w specyfikacji.

Jeśli chodzi o zasilacz, będzie trzeba się go postarać zmniejszyć. Patrząc na wielkość zasilaczy do notebooków, które zasilają jeszcze monitory, powinno to być realne. Wstawi się go w miejsce zmodernizowanego napędu 5,25”. Będzie sobie mógł spokojnie zasysać powietrze z przodu i wydmuchiwać z tyłu.

Teraz możliwe powinno być stworzenie znacznie mniejszego, bardzo wydajnego i cichego komputerka stacjonarnego. Wielkości SFF. Płyta główna płasko na dole, prostopadle do niej karty rozszerzeń. Nad nimi napędy i zasilacz.

Będzie można też ułożyć karty równolegle do płyty głównej, aby uzyskać sprzęt, który bedzie zgrabnie leżał sobie pod telewizorem (albo wielkim monitorem) w salonie. Płyta główna będzie wtedy trochę dziwna, chyba.

Bardziej potrzebujący otrzymają Tower. Plyta główna pionowo, będzie miała trochę więcej slotów na karty rozszerzeń, które umieści się poziomo. Do tego trochę więcej miejsca na dyski twarde i inne napędy, nad płytą główną. Powstanie ładna wierza o bardziej kwadratowej podstawie, niż obecne.

Cóż, nasuwa mi się na myś jeszcze wiele innych rozwiązań. Czemu nikomu nie chce się wprowadzić tak wspaniałego rozwiązania.

Dylemat webmastera

,

Zapomniałem wcześniej napisać, że dostałem pracę jako webmaster... Wysokość wynagrodzenia niestety jest bardzo zmienna, podobnie jak ilość pracy. Ale mam pracę w zawodzie, a przy odrobinie szczęścia może być bardzo dobrze.

Jeśli zaś chodzi o główny temat wpisu, moje najnowsze przemyślenie.

Jeśli puste miejsce na stronie ma swoją wartość, jak o tym przekonać klienta?
Jeśli trzeba zapełnić całą stronę, jak radzić sobie z różnymi rozdzielczościami ekranów, różnymi wielkościami okien, różnymi wielkościami i krojami fontów?

eKmks - pewne podsumowanie

, ,

Kolejny prywatny post na temat mojej pracy nad pewną stronką. (Skroman księgarnia internetowa na 500 wizyt dziennie.) Tyle jeszcze muszę zrobić i tak bardzo potrzebuję motywacji. Jakby ktoś chciał dodać mi otuchy, nie pogniewam się.

W każdym razie wszystko idzie w dobrym kierunku:
1. Strona jest tak mała, że 1kB robi się istotny.
2. Strona jest bardzo nowoczesna.
3. Strona jest bardzo tolerancyjna dla różnych rozdzielczości monitorów.
4. Strona posiada literki, których nie trzeba powiększać.
5. Strona działa tak szybko, że 100ms robi się istotne.
6. Strona działa pod nowoczesnymi przeglądarkami.
7. Strona została napisana od podstaw, nie bazuje na innych projektach.

Oddzielne style dla MSIE, adresy relatywny

, ,

Adres relatywny jest ustalany na podstawie adresu dokumentu, w którym się znajduje. Wszystko robi się jednak bardzo ciekawe, kiedy dokument html i jego arkusz stylów są w różnych katalogach. Normalna przeglądarka, jeśli w arkuszu są adresy relatywne, za ich podstawę przyjmie położenie samego arkusza. Oczywiście przeglądarka Microsoftu za podstawę przyjmię położenie dokumentu html.

Prostym rozwiązaniem byłoby stworzenie dwóch katalogów, jeden style-dla-ie/, a drugi style-dla-normalnych/. W tym pierwszym umieścić styl-dla-ie.css, a w tym drugim styl-dla.normalnych.css i styl.css. Dokument html odwoływałby się do pliku ./style-dla-normalnych/styl.css, który to odwoływałby się do dwóch innych arkuszów: ./style-dla-ie/styl-dla-ie.css i ./styl-dla-normalnych.css. Wadą tej metody jest to, że normalne i nienormalna przeglądarki otrzymają kod css, który będzie zawierał odwołanie do jednego, nieistniejącego pliku, czyli błędny kod.

Możliwe jest takie rozwiązanie, gdzie obie przeglądarki otrzymają w swoim mniemaniu całkowicie poprawny kod, ale wtedy struktura ktalogów będzie nielogiczna.

Zoom stron www

, ,

Zaletą przeglądarek graficznych jest możliwość dowolnego doboru wielkości i kroju liter. Webmasterzy bardzo chętnie z tego korzystają. Problem w tym, że zazwyczaj stosują zbyt małe literki. Na szczęście wiekszość przeglądarek potrafi powiększyć tekst. Niestety tutaj pojawiają się poważne problemy.

Zacznijmy od tego, w jaki sposób można określić wielkość tekstu. Zasadniczo są trzy metody.

Część osób cały tekst określa w pikselach. Zazwyczaj te osoby są krytykowane za brak znajomości poprawnych technik tworzenia stron www. Najczęściej za poprawne uważa się określanie wszystkich liter w jednostkach względnych albo opisowych. To jednak też jest błąd. Wielkość liter powinno się określać z uwzględnieniem obiektów, które ów tekst otaczają.

Jeśli tekst jest ściśle związany z bitmapą, trzeba go określić w jednostkach typowych dla bitmapy, czyli pikselach. Jeśli zaś tekst jest umieszczony w takim miejscu, że można swobodnie decydować o jego rozmiarze, wypadałoby pozwolić użytkownikowi swobodnie decydować o jego wielkości, więc zastosować jednostki opisowe albo względne.

Przeglądarki Firefox i Konqueror powiększają tekst niezależnie od jednostek, w jakich został określony. Przy okazji powiększają wszystko, co zostało określone w jednostkach relatywnych. Dzięki temu część stron, w których webmasterzy ustawili cały tekst w px, mogą zostać powiększone. Niestety strony, gdzie tekst jest bardzo uzależniony od grafiki, będą się sypały.

Zoom w przeglądarce Microsoft Internet Explorer nie powiększa tekstu określonego w px, więc nie działa na większości stron. Jednak nawet na poprawnie napisanych stronach działa w dość ograniczonym zakresie i oferuje maksymalnie czterokrotne powiększenie. Nie powoduje za to problemów na stronach, gdzie teskst jest uzależniony mocno od bitmap, przy założeniu, że został określony w px. Spotkałem się niestety ze stronami, gdzie taki tekst określono (chyba) w em, więc sypał się we wszystkich znanych mi przeglądarkach.

Operę zostawiłem na koniec. Przeglądarka ta została wyposażona w zoom, który powiększa wszystko, łącznie z bitmapami. Oczywiście takie zoomowane bitmapy tracą bardzo wiele na jakości, ale za to układ strony zostaje zachowany. I tutaj ciekawostka, Opera posiada też dodatkowy zoom, działający analogicznie jak ten w przeglądarce Microsoftu. Niestety działa on automatycznie, to znaczy bazuje na ustawieniach systemu operacyjnego, i nie potrafię go wyłączyć. Sprawdzałem na Windows 98 i Windows XP SP2. Z tego powodu układ kilku stron się sypał i nie dało się tego poprawić.

Formularze, a dane tabelaryczne

, , ,

Tak dużo się pisze o tym, że tabele powinny służyć tylko do danych tabelarycznych. Zgadzam się z tym. Doszedłem jednak do nieoczekiwanego wniosku, że formularze to przykład danych tabelarycznych.

Przejdźmy do konkretów. Przykładowy formularz składa się z:
- bloku, w którym jest umieszczona jego treść
- par właściwych pól formularza i ich opisów
- właściwych pól formularza
- opisów właściwych pól formularza

Czyli mamy wszystko, co jest potrzebne do zbudowania tabeli css. Teoretycznie. W praktyce bowiem pojawiają się problemy.

Pierwszy problem nazywa się Microsoft Internet Explorer i jego 80% udziału w rynku. Jest to dostateczny powód, aby nie stosować tabel css. Można się nad nim długo rozwodzić. Nie jest to jednak jedyny problem. Drugi to bardzo słaba obsługa formularzy przez CSS.

Może teraz krótkie porównanie. Co trzeba zrobić, aby uzyskać napis w czerwonym kwadracie? Są to 3-4 instrukcje CSS: dwie na określenie wymiarów kwadratu, jedna na określenie jego koloru i w razie potrzeby jedna na określenie, że jest to element blokowy. A co trzeba zrobić, aby uzyskać stosowne pole tekstowe w czerwonym kwadracie? Umieszcza się owe pole w dodatkowym elemencie xhtml, który jest stylizowany na czerwony kwadrat.

Niestety przez tyle lat nikt nie wymyślił, spójnej metody na stylizowanie elementów formularzy. Ich stylizowanie sprawia tak dużo problemów, że często najlepiej jest je zostawić w domyślnych ustawieniach. Jakby ktoś ustandaryzował stylizowanie formularzy, miałby problem ze wszystkimi przeglądarkami na rynku. Duże nadzieje wiążę więc z xform.

Teraz pora wrócić do naszych obecnych formularzy. Skoro trzeba zastosować dodatkowe elementy, a przeglądarka Microsoftu ma duże problemy z obsługą niezbędnych styli, najlogiczniejszym rozwiązaniem byłoby zastosowanie zwykłych tabel. Mamy w nich elementy table, tr, th i td, czyli wszystko, co jest nam potrzebne. Nawet nie treba dopisywać dodatkowych klas, w końcu normalne tabele nie znajdują się w elemencie form.

Oczywiście znaczna część formularzy nie wymaga stosowania tabel. Ale skoro tabele pokrywają sie z podziałem logicznym, można będzie je przy pomocy css odpowiednio przerobić. Aczkolwiek jeszcze nie badałem tego zagadnienia. W każdym razie uznałem, że stosowanie tabel w formularzach jest uzasadnione.

HTML - fonty i ich wielkości

,

Jak teoretycznie można ustalać wielkości fontów wyświetlanych na monitorach? Można je ustalić względem przekątnej ekranu, rozdzielczości monitora, rozdzielczości okna przeglądarki, pikseli, fontów w elemencie nadrzędnym, a nawet względem fontu, który dana osoba uznała za czytelny. Niestety praktyka jest trochę inna.

Najpopularniejszym sposobem jest ustalanie rozdzielczości w pikselach. Wszyscy mówią, że jest to zły sposób, bo przeglądarki nie potrafią takich fontów powiększyć. Fakt, Internet Explorer ma problemy, kolejny powód do zmiany. Jakie są więc alternatywy.

Dawno tego nie sprawdzałem, ale jednostki metryczne (cale, milimetry i pokrewne) są najwyraźniej przez wszystkie przeglądarki tłumaczone na wartości w pikselach, a nie swoje nominalne wielkości. Dotyczą raczej materiałów drukowanych.

Bardzo ciekawie wygląda ustalanie wielkości na podstawie elementu nadrzędnego: w procentach, em albo ex. Wtedy, kiedy zaszłaby potrzeba zwiększenia albo zmniejszenia całości strony, wystarczyłoby zmienić jeden wpis. Trochę z tym dziedziczeniem jest problemów, ale ogólnie działa znośnie. Pozostaje tylko ustalenie wielkości tego głównego elementu...

Nie jest prawdą, że wszystkie przeglądarki podobnie interpretują wielkości bezwzględną (small,medium, large). Okazało się, że Opera ustala ją na podstawie domyślnej wielkości czcionki w systemie operacyjnym. (Testowałem na Windows 98.) Internet Explorer i Mozilla Firefox nie były na to wrażliwe, ale jeśli ktoś powiększa sobie czcionki w systemie operacyjnym, pewnie zrobił to i w przeglądarce.

Pojawił się jednak problem, mianowicie grafika rastrowa (jpeg, png, gif). Niesty owa grafika bardzo źle znosi skalowanie, traci wtedy bardzo na swojej jakości. A niestety wiele serwisów w znacznym stopniu się na niej opiera, więc nie można w ich przypadku bardzo swobodnie operować wielkościami fontów. Niestety w takim wypadku trzeba zastosować wielkość w pikselach. Zawsze to lepsze, niż obrazki w miejsce tekstu.

Podsumowując, jeśli serwis źle znosi drasytczne zmiany wielkości czcionki, należy główną czcionkę podać w pikselach, a pozostałe ustalać względem niej. Czcionka o wielkości 20 pikseli powinna być już wygodna w czytaniu. Kiedy jednak serwis dobrze znosi owe drastyczne zmiany wielkości, najlepiej podstawową czcionkę ustawić na small.

Czemu nie na medium? Kiedyś czcionki wyświetlane na ekranie były znacznie mniej czytelne, więc trzeba było stosować większe czcionki, aby można było je wygodnie odczytać. Było to spowodowane brakiem ich wygładzania i mniejszą czytelnością dostępnych krojów. Ustalając wielkość czcionki ustala się wielkość wielkiej litery, czytelność czcionki zależy zaś od wielkości litery małej. W czionkach stworzonych specjalnie na potrzeby www małe litery w porównaniu do wielkich są większe, niż w czcionkach stworzonych do materiałów drukowanych. Czyli dwa teksty napisane różnymi czcionkami o tej samej wielkości, moga w efekcie wyglądać, jak dwa teksty napisane czionkami o różnej wielkości. Jest specjalne polecenie CSS, które powinno zniwelować ten problemem, niestety nie działa... Ale o tym może napiszę więcej przy innej okazji.

Podsumowując. W Sieci bardzo łatwo znaleźć serwisy, które mają problemy z rozmiarami czcionek. Znalezienie serwisów, które owych problemów nie mają, takie łatwe już nie jest.

Modna na xhtml

, ,

Ostatnio coraz częściej trafiam na strony, które deklarują zgodność ze standardem xhtml. Postanowiłem więc podzielić się moją wiedzą z tego zakresu.

Największym mitem odnośnie xhtml jest to, że ów standard umożliwił oddzielenie treści strony od jej warstwy prezentacyjnej. Pod tym względem nie nastąpiły najmniejsze zmiany w stosunku do HTML4.

Raz nawet trafiłem na informację, która w moim odczuciu sugerowała, że xhtml to dhtml. Czyli wszystko na stronie się ruszało. W każdym razie takie rzeczy były możliwe już w HTML4.

Spotkałem się jeszcze z twierdzeniem, że xhtml pozwala na stosowanie unikodu. Unikod totaki standard kodowania, w którym bez problemów można zapisać prawie dowolną literę. Prawdę powiedziawszy, nie znam standardu HTML, w którym nie dało się tego zrobić.

Istnieje jeszcze przekonanie, że xhtml jest znacznie tródniejszy od HTML. Właściwie to jest odwrotnie. Składnia HTML jest bardzo rozbudowana. Przeciętny webmaster zna tylko jej podstawy. Składnia xhtml zaś składa się właściwie tylko z tych podstaw. Dzięki temu bardzo łatwo można sprawdzić, czy nie popełniło się w kodzie błędów składniowych.

Jest jednak z technologią xhtml jeden, poważny problem. Przeglądarka Internet Explorer zwyczajnie sobie z nim nie radzi. Jak więc działają w niej te liczne strony, które deklarują xhtml? Standard xhtml został tak zbudowany, aby przeglądarki mogły go interpretować jako zwykly HTML. Niestety w ten sposób traci się jedyną zaletę, jaką jest pilnowanie poprawności składni.

Jeśli ktoś chce tworzyć nowoczesne strony, powinien zainteresować się standardami strict, które to właśnie wymuszają oddzielenie warstwy prezentacyjnej od samej treści strony. Niestety są to bardzo mało popularne standardy.

W tym miejscu powinienem zauważyć, że tak reklamowane oddzielenie tych warstw jest prawie niemożliwe. Niestety przeglądarka Internet Explorer, poza brakiem obsługi xhtml, ma poważne braki w obsłudze CSS, która to technologia jest w tym wypadku niezbędna.

Czyli co mamy robić? Moim zdaniem najlepiej jest tworzyć strony pod xhtml. Zaś prezentować je światu najlepiej jest jako html. W międzyczasie nakłaniać do porzucenia przeglądarki Microsoftu, co może kiedyś zaowocuje jej poprawą albo marginalizacją.

Tła i ich przyczepianie

, ,

Postawiłem sobie dość ciekawe zadanie. Zrobić układ oparty na 3 kolumnach, który dobrze by się sprawował przy różnych rozdzielczościach i niedopracowaniach przeglądarek. Po długim szukaniu, myśleniu i takich tam, zdecydowałem się na zabawę z float. Dzięki temu, jeśli zaistnieje taka potrzeba, układ zrobi się 2, albo nawet 1 kolumnowy. Ale jak ma się to do wspomnianego tła?

Zgodnie z założeniami po lewej stronie miała być kolumna, która wraz z nagłówkiem tworzyłaby wspólny motyw kolorystyczny, który odróżniałby się od pozostałej części strony. Tutaj pojawiły się problemy.

Nie mogłem sprawić, aby float sięgał do samego dna strony, a chciałem nadać kolumnie odpowiedni kolor i obramowanie. Rozwiązaniem okazało się przypisanie odpowiednio spreparowanego tła dla elementu html. Wszystko sprawuje się dobrze, mam jednak pewną wątpliwość. To jest tło nie dla całej strony, a dla jednej kolumny. Powinienem więc nadać je tej kolumnie. Z drugiej jednak perspektywy, tam gdzie treść w lewej kolumnie się kończy, zaczyna się element graficzny, który ozdabia całą stronę.

Przy okazji zauważyłem jedną ciekawą rzecz. Możliwość stosowania wielu teł jest we wczesnej fazie implementacji, czyli nie można jej stosować na masową skalę. W tym jednak przypadku, mogłe nałożyć na lewą kolumnę dodatkowy obrazek i ozdobić miejsce, gdzie się łączy z nagłówkiem, przy pomocy dodatkowego tła (bez repeat).

Nagłówek okazał się kolejnym problemem. Niestety miał'width na całą szerokość strony, a ja chciałem aby był obramowaniem oddzielony od całej treści strony za wyjątkiem lewej kolumny. Tutaj pomocne okazało się pozycjonowania relatywne. Dodałem mu ramkę o szerokości 3px na dole i o tyle samo ruszyłem do góry lewą kolumnę. Dzięki temu zasłoniła ramkę.

Co nieoczekiwane, dziala poprawnie w MSIE.
May 2008
SMTWTFS
April 2008June 2008
123
45678910
11121314151617
18192021222324
25262728293031