Keil (anty)reklama [dlugie]

Oct 21, 2004 20 Replies

Witam. Znow sie zdenerwowalem na Keila i postanowilem go troche publicznie 'obsmarowac'. Chodzi o bardzo fajny produkt

formatting link
system czasu rzeczywistego na procesory z rodziny 166, dodatkowo system plikow w pamieci Flash lub RAM i TCP/IP. Calosc kupilismy na poczatku tego roku. Okazalo sie, ze KEIL sprzedal nam wczesna wersje beta. Oczywiscie nie uprzedzil nas o tym fakcie. Zastosowalem ARTX-a do pisanego od ponad 2 lat programu. Zastapil RTX-TINY. Moj program to ponad 220KB kodu wynikowego, w porywach do 40 taskow jednoczesnie.



Pierwszy wykryty przeze mnie blad dotyczyl mnozenia. ARTX nie chronil prawidlowo rejestru MUL. Mnozenie w jednym tasku zaklocalo prace mnozenia w innym. Glupie dwa tygodnie szukania, mail do Keila i dwa dni pozniej poprawka.



Z nastepnym bledem nie poszlo mi juz tak latwo. Jak solidnie obciazalem procesor, niektore taski potrafily zamierac na wieki. Przez ponad dwa miesiace szukalem bledu u siebie, nie potrafiac napisac prostgo programu, ktory ilustrowalby blad. Metoda upraszczania kodu udalo sie. Kolejna poprawka, pipeling effect w jadrze ARTX.



Kilka tygodni pozniej odkrylem, ze funkcje typu os_evt_wait zwracaja zle wyniki. Kolejna poprawka.



Jakis miesiac temu Keil opublikowal nowa wersje kompilatora i ARTX-a. Dwa kolejne bledy (zle wersje bibliotek zamieszczone w setupie) i znow kilka dni straty.



Przeszedlem z Keilem droge od wersji 0.9 do 1.02 Od pary dni bawie sie dolaczonym do ARTX-a systemem plikow. Znow rozczarowanie. Po zapisie 100 bajtow plik potrafi miec dlugosc 50 bajtow, a po zapisie 99 bajtow dlugosc 65585.



Rece opadaja. Sam ARTX kosztuje kilkanascie tysiecy zlotych. Kompilator tez cos kolo tego. Faktem jest, ze support Keila dziala dosc szybko. Szkoda tylko, ze Keil testuje swoje produkty na ludziach. Stanowczo odradzam kupowania nowosci oferowanych przez Keila. Lepiej poczekac az przetestuja inni.



Szkoda, ze firma tylko przez rok udziela wsparcia technicznego. Jak w tym czasie nie wyjada powazniejsze bledy w kupionym programie pozostaje juz tylko upgrade za kolejne kilka tysiecy.



pozdrawiam, peters


I dlatego twierdze ze prawo nie chroni interesow klientow - idac do sklepu kupuje sie zelazko ktore kosztuje 200zl i dostaje sie np 3 lata gwarancji a idac do sklepu i kupujac np edytor tekstow kupuje sie za 2 tysiace nosnik ktory ma czlowiek prawo wymienic w ciagu 7 dni... nie kupuje nic ponad pudelko, nosnik i ksiazke... bo przeciez zgodnie z licencja nie staje sie wlascicielem programu a jednynie nabywa prawo do zainstalowania i uzywania programu oczywiscie producent nie gwarantuje tego ze mozliwe bedzie uzywanie programu... czyli o co tutaj chodzi...?

to jest nic - w umowie licencyjnej oprogramowania do sound blastera niedawno przeczytalem, ze producent nie gwarantuje nawet tego, ze oprogramowanie nie zawiera trojanow, backdoorow i wirusow. I inne, rownie bezczelne teksty. Niestety, jesli ktos sie producentom oprogramowania nie dobierze do d..y z urzedu, to my, jako klienci mozemy sobie co najwyzej sami napisac programik (a i to pewnie wkrotce bedzie nielegalne ze wzgledu na patenty).

pozdrawiam entrop3r

publicznie

(...)

kiedy znalazlem blad w kompilatorze IAR-a pod '51, facet z supportu poinformowal mnie, ze jest juz nowsza wersja, ale nie wie, czy ten blad zostal naprawiony, a jak ja jestem ciekaw, to moge sobie zakupic...

pozdrawiam entrop3r

U¿ytkownik "entroper" snipped-for-privacy@CWD.spamerom.poczta.onet.pl> napisa³ w wiadomo¶ci news:cl8bm2$8qd$ snipped-for-privacy@achot.icm.edu.pl... [ciap]

Po czym skasowa³ pensjê kilkukrotnie wy¿sz± od Twojej i pojecha³ do domu :-))

Andrzej Kamieniecki

mam nadzieje ze dlugo stal w korkach, a w domu okropna zona zrobila mu awanture :D

pozdrawiam entrop3r

W ten sposob zmusza sie klientow, by ciagle kupowali nowsze wersje tego samego produktu. Problem w tym, ze przy kupnie np telewizora, jestesmy w stanie ocenic juz przy zakupie czy dziala czy nie. Kupujac kompilator, czesto przekonujemy sie o jego wadliwym dzialaniu czasem dopiero po kilku latach. Oczywist jest, ze taki kompilator od poczatku nie dzialal prawidlowo. Nie zepsul sie podczas kilu lat eksploatacji. Po prostu nigdy nie dzialal dobrze. Jakbyscie sie zachowali kupujac auto w instrukcji ktorego napisane jest, ze ma rozkladane fotele. Dopiero po kilu latach, dawno po gwarancji, zapragneliscie z nich skorzystac. Okazalo sie jednak, ze oparcia sa przyspawane do calej reszty. Z pewnoscia sprawa trafilaby do sadu. Sam jestem tworca oprogramowania i dobrze wiem, ze nie da sie splodzic pozbawionego bledow kodu. Rozumiem, ze drobne bledy w dzialaniu programu nie moga byc powodem do zadania nowej wersji programu. Nikt nie da nowego auta tylko dlatego, ze w starym czasem zacina sie czujnik parkowania. Wskazanie przez uzytkownika istotnego bledu powinno powodowac szybkie jego usuniecie i wyslanie poprawionej wersji. To, ze bedzie to juz wersja bogatsza o kila innych funkcji-trudno, strata producenta. :)

peters

On Behalf Of peters

Nie. To jest konsekwencja "upublicznienia" PECETA przez IBM. Nie będąc producentem kompletnego komputera i nie będąc producentem programu "systemowego" oraz nie będąc producentem innych programów mogących pracować współbieżnie - nikt świadomie nie da gwarancji na nie zawodność własnego programu. Pod tym płaszczykiem oczywiście chroni się własne niedoróbki.

Zabawa polega na tym, że coraz więcej ignorantów za pomocą komputerów mogą udawać fachowców. Co gorsza, z powodu błędów w programach fachowcy zaczynają być równie szybcy i nie zawodni jak ignoranci. A właściwie powolni i zawodni jak ignoranci.

Jeśli prawidło działający czujnik parkowania był w ofercie prawnie wiążącej to można żądać nowego samochodu. Samochód uszkodzony na skutek wad fabrycznych podlega wymianie na nowy pozbawiony _tej_ wady. Niestety wymaga to sądu. Naprawa samochodu nie zmienia faktu, że to samochód powypadkowy, a w związku z tym utracił sporo na swojej wartości.

W praktyce okaże się, że inne błędy mają wyższy priorytet, lub nowsza wersja będzie pozbawiona tego błędu. Czy w licencji lub umowie kupna jest określony zakres napraw gwarancyjnych i ich termin naprawy?

pzdr Artur

U¿ytkownik "peters" snipped-for-privacy@poczta.onet.pl> napisa³ w wiadomo¶ci news:cl92ap$a30$ snipped-for-privacy@nemesis.news.tpi.pl...

Mia³em podobny problem z Borlandem C++ 4.2 Moje programy czêsto zachowywa³y siê dziwnie (niestety wychodzi³o to w jakich¶ specyficznych sytuacjach u klienta). Zawsze w pierwszym podej¶ciu wysy³a³em natychmiast ten sam program skompilowany pod C++ 3.1 (posiadanym nielegalnie) - dzia³a³ bezb³êdnie. Poprawa b³êdu za ka¿dym razem polega³a na napisaniu tego samego trochê inaczej. Ale ile razy mo¿na to robiæ.

W koñcu (z trudem) uda³o mi siê wy³uskaæ z którego¶ z programów b³êdnie dzia³aj±cy fragment. Oto on: ====================== #include <iostream.h>

void main() { int i=0,y=4;

if(i==0)i=y-1; else i=i-1;

cout << "i=" << i; } ========================= Zachodzi warunek 'if' wiêc 'i' powinno byæ 3. I tak jest w C++ 1.0, C++ 3.1, ale nie C++ 4.2 - tam wychodzi 4.

Fragment po 'else' niby nie wykorzystywany w tym programiku musi byæ. Bez niego dzia³a dobrze. Nie uda³o mi siê znale¼æ innej zawarto¶ci po 'else' równie¿ powoduj±cej b³±d.

Próbowa³em jako¶ uzyskaæ poprawion± wersjê programu - bezskutecznie. Automat na stronie Borlanda moje maile odsy³a³ do Borlanda w Polsce, a oni oferowali mi support po op³aceniu jakiej¶ tam rocznej stawki lub zakupienie C++ 5.0

P.G.

A patrzyles jak to skompilowal ? Podejrzewam ze wywalil '-1' poza if, ale widac jakos przekombinowal ..

Hm, no coz .. po jakims tam czasie to w zasadzie chyba norma. Widzialy galy co braly, sprawdzal sie tyle lat .. teraz nie mamy ochoty na poprawianie starocia..

J.

To co napiszê mo¿e nie jest pocieszeniem, zreszt± pewnie nie znajdzie siê chêtny do wej¶cia w spór z "Wielkimi", ale w wiêkszo¶ci EULA ("Licencja u¿ytkownika oprogramowania") jest napisane, ¿e producent gwarantuje ¿e "oprogramowanie bêdzie dzia³a³o zasadniczo zgodnie z dostarczon± z nim dokumentacj±". Je¿eli taki b³±d powoduje OCZYWISTE niedzia³anie lub zaprzeczanie ogólnie przyjêtym normom (matematyka, fizyka itp.) to jest szansa na zmuszenie producenta do poprawienia go.

Marek

U¿ytkownik "J.F." <jfox snipped-for-privacy@poczta.onet.pl> napisa³ w wiadomo¶ci news: snipped-for-privacy@4ax.com...

Nie patrzy³em. Prawdê mówi±c nie bardzo bym umia³ to zrobiæ. Programujê tylko dorywczo (góra 1 miesi±c w roku, a ostatnio nawet mniej), poza tym jestem elektronikiem, a obecnie g³ównie EMC. Przez to EMC to popad³o mi na robienie p³ytek bo tak szybciej ni¿ wyt³umaczyæ ....

P.G.

Ale na pececie wcale nie musi chodzić jedynie słuszny Windows (i to jeszcze w wersji 9x :-) ) Z drugiej strony np. Sun i Apple nie publikują "specyfikacji" swoich sprzętów, a oprogramowanie na te platformy tworzą nie tylko te firmy.

Regards, /J.D.

znajdzie siê

("Licencja

gwarantuje ¿e

Mysle, ze predzej ten zapis zostanie usuniety... Licencja bedzie wygladala tak: producent nie gwarantuje, ze oprogramowanie bedzie dzialac w jakikolwiek sensowny sposob i w zgodnosci z jakakolwiek dokumentacja. W szczegolnosci producent nie gwarantuje, ze oprogramowanie nie zawiera powaznych bledow, powodujacych calkowite niedzialanie tego programu, innych programow, programow stworzonych przez ten program, calego komputera lub sieci komputerowej dowolnego rozmiaru :) Przymiarki do takiego ksztaltu licencji juz widac.

pozdrawiam entrop3r

On Behalf Of Jan Dubiec

Ale w pececie są różne płyty główne i inne drobiazgi różnych producentów. Czasami jest problem, żeby to w ogóle chciało ruszyć ;-). A jeśli już ruszy, to zaczynają się problemy ze sterownikami i łatkami dla win. A później zaczynają się schody przy instalacji np 5 programu. A wszystko tylko dlatego, że ze względu na różnorodność sprzętu programy muszą być uniwersalne (w domyśle - może mniej programy, a bardziej win). Programiści dla Sun i Apple mają komfortowe warunki. Z tego powodu tamte systemy są dużo bardziej stabilne. Co i tak nie zmienia faktu, że nigdy nie wiadomo na którym modelu będzie zainstalowany program, oraz jakie inne programy się tam znajdą.

pzdr Artur

U mnie bylo lepiej - dostalem odpowiedz ze owszem, blad zostal znaleziony ale go nie maja zamiaru poprawic!!!!

Normalnie noz sie w kieszeni otwiera...

Moze wynikalo to z faktu, ze chcieli zachowac kompatybilnosc wsteczna. Czasem jest tak, ze blad w kompilatorze zaczyna byc omijany przez programistow. Wprowadzenie dosc pozno poprawki do kompilatora moze spowodowac, ze napisane juz programy przestana dzialac poprawnie.

peters

Wtedy chyba lepiej wprowadzic poprawke, a dla zachowania zgodnosci dodac w opcjach pstyczek wylaczajacy ja - na zyczenie. Inaczej blad bedzie _uczyl_ omijania problemu wszystkich nowych programostow.

__ Pzd, Irek.N.

On 22 Oct 2004 23:51:11 +0200, snipped-for-privacy@poczta.onet.pl (ziel) wrote: [.....]

No ale przecież nie ma przymusu kupowania składaków. "Brand name'y" działają dobrze. :-)

[.....]

Dwa niezłośliwe programy puszczone na dobrym systemie operacyjnym nie są w stanie "wywrócić" siebie nazwzajem czy też całego OS-a. A nawet jeśli są złośliwe to nie mogą tego zrobić jeśli są uruchomione z odpowiednio niskimi uprawnieniami. Jeżeli chodzi o Windows, to NT i wyższe są dobrymi OS-ami.

Regards, /J.D.

Wiesz, to niekoniecznie wynika ze zlej woli producenta. Czasem (przy bardzo skomplikowanych projektach) bywa tak, ze przeoczy sie jakis, wydawaloby sie, malo istotny szczegol i na tej podstawie wprowadzi istotne uproszczenie w strukturze programu. A pozniej trafia Ci do glowy kontrprzyklad, ktory obala to uproszczenie i w celu poprawienia bledu trzeba wlasciwie przepisac caly program od nowa. Mnie tez sie to kiedys przytrafilo podczas tworzenia pewnego analizatora przeplywu danych, na szczescie zorientowalem sie w dosc wczesnej fazie, wiec naprawienie tego zajelo "tylko" ~10 dni.

Pozdrawiam Piotr Wyderski

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required