Improwizacja lotosu

Improwizacja lotosu
Deweloperzy Rozwój Lotosu
Pierwsze wydanie 1991 ; 32 lata temu ( 1991 )
System operacyjny NeXTSTEP , Windows 3.1
Typ arkusz

Lotus Improv to wycofany program arkusza kalkulacyjnego firmy Lotus Development wydany w 1991 r. Na platformę NeXTSTEP , a następnie dla systemu Windows 3.1 w 1993 r. Rozwój został wstrzymany w 1994 r. Po powolnej sprzedaży na platformie Windows i oficjalnie zakończony w kwietniu 1996 r. po zakupie Lotus przez IBM'a .

Improv był próbą ponownego zdefiniowania sposobu, w jaki program do obsługi arkuszy kalkulacyjnych powinien działać, aby ułatwić tworzenie nowych arkuszy kalkulacyjnych i modyfikowanie istniejących. Konwencjonalne arkusze kalkulacyjne wykorzystywały komórki ekranowe do przechowywania wszystkich danych, formuł i notatek. Improv oddzielił te koncepcje i wykorzystał komórki tylko do danych wejściowych i wyjściowych. Formuły, makra i inne obiekty istniały poza komórkami, aby uprościć edycję i zmniejszyć liczbę błędów. Improv używał nazwanych zakresów dla wszystkich formuł, w przeciwieństwie do adresów komórek.

Chociaż nie odniósł sukcesu komercyjnego w porównaniu z głównymi produktami, takimi jak Lotus 1-2-3 czy Microsoft Excel , Improv znalazł silne poparcie na niektórych niszowych rynkach, zwłaszcza w modelowaniu finansowym . Był bardzo wpływowy na tych specjalnych rynkach i dał początek wielu klonom na różnych platformach, w szczególności Quantrix firmy Lighthouse Design .

Apple Inc. 's Numbers łączy formułę i system nazewnictwa podobny do Improv, ale działa w konwencjonalnym arkuszu kalkulacyjnym.

Historia

Tło

Oryginalne arkusze kalkulacyjne były kartkami papieru z pionowymi i poziomymi liniami, dostosowanym arkuszem roboczym przeznaczonym do zastosowań księgowych . Użytkownicy wprowadzali dane do prostokątnych obszarów na arkuszach, zwanych komórkami, a następnie stosowali formuły do ​​danych w celu uzyskania wartości wyjściowych zapisywanych w innych komórkach. Profesor z Berkeley, Richard Mattessich , był zwolennikiem używania arkuszy kalkulacyjnych do modelowania finansowego i obliczeń „co by było, gdyby” dla firm, ale zauważył, że ponowne obliczenie go w celu uruchomienia innego scenariusza może zająć tak dużo czasu, że dane wejściowe będą nieaktualne do czasu zakończenia obliczeń . W 1964 roku zaproponował użycie komputera do przeprowadzenia wszystkich obliczeń od momentu zmiany, aktualizując w ten sposób arkusz w ciągu kilku sekund, a nie dni.

Nauczanie korzystania z modelowania arkuszy kalkulacyjnych było powszechne w szkołach biznesu , często przy użyciu tablic oznaczonych kredą o układzie podobnym do wersji papierowych. Korzystanie z tablicy ułatwiło poprawianie błędów i umożliwiło udostępnienie arkusza całej klasie. W 1979 roku Daniel Bricklin korzystał z takiego urządzenia, kiedy postanowił podjąć próbę skomputeryzowania go na nowo wprowadzonych komputerach osobistych . Wspólnie z Bobem Frankstonem stworzyli pierwszy arkusz kalkulacyjny VisiCalc i wypuścili go na komputer Apple II w 1979 roku. Ben Rosen z Morgan Stanley widział program i napisał, że „VisiCalc może być oprogramowaniem, które macha ogonem psa przemysłu komputerowego”.

VisiCalc odniósł ogromny sukces, do tego stopnia, że ​​pojawiła się ogromna liczba klonów. Jeden z nich został napisany przez byłego programistę VisiCalc, Mitcha Kapora . Jego wersja, Lotus 1-2-3 , odniosła jeszcze większy sukces niż VisiCalc, w dużej mierze dzięki temu, że działała na nowym komputerze IBM PC i była do niego dostosowana . Lotus 1-2-3 sprzedał się w 60 000 egzemplarzy w pierwszym miesiącu, a Lotus wkrótce stał się jedną z największych firm programistycznych na świecie.

ATG

Lotus założył grupę zaawansowanych technologii w 1986 roku. Jednym z ich początkowych zadań było sprawdzenie, czy mogą uprościć zadanie konfigurowania arkusza kalkulacyjnego. Gotowe arkusze kalkulacyjne były łatwe w użyciu, ale wielu użytkownikom trudno było wyobrazić sobie, jak powinien wyglądać arkusz, aby zacząć go tworzyć. Czy dane powinny być wprowadzane w dół kolumn, czy między wierszami? Czy wartości pośrednie powinny być przechowywane w arkuszu, czy na oddzielnym arkuszu? Ile miejsca będziemy potrzebować?

Pito Salas , programista w firmie ATG, postanowił zaatakować ten problem. Po kilku miesiącach studiowania istniejących rzeczywistych przykładów stało się jasne, że dane, widoki tych danych i formuły działające na tych danych to bardzo odrębne pojęcia. Jednak w każdym przypadku istniejące programy arkuszy kalkulacyjnych wymagały od użytkownika wpisania wszystkich tych elementów w tych samych (zwykle pojedynczych) komórkach arkusza.

To nakładanie się funkcji doprowadziło do znacznego zamieszania, ponieważ nie jest oczywiste, które komórki zawierają jaki rodzaj danych. Czy ta komórka jest wartością wejściową, która jest używana gdzie indziej? Czy jest to wartość pośrednia używana do obliczeń? Być może jest to wartość wyjściowa z obliczeń? Nie ma sposobu, aby wiedzieć. Ta wiedza doprowadziła do pomysłów na nowy arkusz kalkulacyjny, który wyraźnie oddzieliłby te pojęcia — dane, formuły i widoki wyników, które łączyłyby dane i formuły w formacie odpowiednim dla użytkownika końcowego. Jednocześnie nowy produkt pozwalałby użytkownikom grupować dane „według celu”, nadając im nazwę zamiast odwoływać się do nich po pozycji w arkuszu. Oznaczało to, że przeniesienie danych na arkuszu nie miałoby wpływu na obliczenia.

Salas zauważył również, że to widoki danych wyjściowych były często najsłabszą częścią istniejących arkuszy kalkulacyjnych. Ponieważ dane wejściowe, obliczenia i dane wyjściowe były wymieszane na arkuszu, zmiana układu mogłaby prowadzić do poważnych problemów w przypadku przeniesienia danych. Po rozdzieleniu danych i formuł nie stanowiło to już problemu. Salas wykazał, że ta separacja oznaczała, że ​​wiele typowych zadań, które wymagały długich obliczeń w istniejących arkuszach kalkulacyjnych, można było wykonać prawie za darmo, po prostu zmieniając widok. Na przykład, jeśli arkusz kalkulacyjny zawierał listę miesięcznych sprzedaży, nierzadko znajdowała się kolumna wyników, która podsumowywała sprzedaż w poszczególnych miesiącach. Ale gdyby ktoś chciał to zsumować według lat, normalnie wymagałoby to innej kolumny z formułą i innego arkusza wyników.

Zatoka Tylna

Pod koniec lata 1986 roku Salas stworzył przypominającą pokaz slajdów demonstrację systemu znanego jako Modeler na komputerze IBM PC . W lutym 1987 zatrudnił Glenna Edelsona do wdrożenia działającej wersji w C++ . Podczas pracy nad projektem stało się jasne, że podstawowa koncepcja była dobra i szczególnie przydatna w modelowaniu finansowym. Pod koniec wiosny zatrudnili Bonnie Sullivan do napisania specyfikacji projektu, a Jeffa Anderholma do zbadania rynku pod kątem nowego programu skierowanego do branży finansowej. Tego lata zespół zabrał Modelera do wielu firm finansowych i spotkał się z niezwykle pozytywnym przyjęciem.

Rok później, we wrześniu 1988 roku, zespołowi ostatecznie dano zielone światło do rozpoczęcia wdrażania Modelera. Po przeanalizowaniu wielu platform, w tym DOS i Macintosh OS , zespół zdecydował, że docelową platformą będzie OS/2 , który w tamtym czasie był uważany za dobrze zapowiadający się system w przestrzeni komercyjnej. Projekt otrzymał kryptonim „Back Bay” od lokalizacji w Bostonie w stanie Massachusetts i wybrano maskotkę, Fluffy Bunny.

W następnym miesiącu, w październiku 1988 roku, Steve Jobs odwiedził Lotus, aby pokazać im nowy komputer NeXT . Kiedy zobaczył Back Bay, od razu się podekscytował i zaczął nalegać, aby gra została stworzona na platformie NeXT. Zespół Lotusa był równie podekscytowany NeXT, ale kontynuował prace nad platformą OS/2. Okazało się to znacznie trudniejsze niż sobie wyobrażano; w tamtym czasie OS/2 był bardzo wadliwy, a Presentation Manager był w powijakach. Rozwój nie przebiegał dobrze.

wydanie NeXT

Po miesiącach zmagań z OS/2, w lutym 1989 zdecydowali się przenieść go do NeXT. Kiedy Jobs dowiedział się o decyzji, wysłał zespołowi ogromny bukiet kwiatów. Co ważniejsze, wysłał również Bruce'a Blumberga, jednego z ekspertów oprogramowania NeXT, aby nauczył zespół Lotus o NeXTSTEP. Jeden niepokojący problem okazał się w praktyce ogromną zaletą; Ponieważ back-end został napisany w C++, a front-end w Objective-C , bardzo łatwo okazało się segregowanie programu i wyszukiwanie błędów. Dodatkowo Konstruktor interfejsów NeXT pozwól zespołowi eksperymentować z różnymi interfejsami użytkownika w tempie, które nie było możliwe na innych platformach, a system szybko ewoluował w tym okresie.

Po powrocie z wizytą w kwietniu 1989 r. Jobs przedstawił zespołowi zadanie dotyczące ich systemu kategoryzacji. Zażądał sposobu bezpośredniego manipulowania kategoriami i danymi na ekranie, zamiast używania menu lub oddzielnych okien. Doprowadziło to do powstania jednej z najbardziej znanych funkcji Improv, kategorii „kafelki”, ikon, które umożliwiały zmianę układu arkuszy wyjściowych w ciągu kilku sekund. Jobs przez cały czas wspierał i nieustannie motywował zespół do ulepszania produktu na wiele sposobów. Blumberg pozostawał pod telefonem, aby pomóc w rozwiązywaniu problemów technicznych, które stały się poważne, ponieważ NeXT był w trakcie wydawania NeXTSTEP 2.0, pierwszej dużej aktualizacji systemu.

Improv for NeXT został wydany w lutym 1991 roku, co zaowocowało „ciężarówkami” kwiatów od Jobsa. Program od razu stał się hitem, otrzymując pochwały i doskonałe recenzje w głównych publikacjach komputerowych, a także, co niezwykłe, w mainstreamowych magazynach biznesowych. zabójczą aplikacją NeXT, okazały się prawdziwe, a tysiące maszyn ostatecznie zostanie sprzedanych na rynek finansowy, początkowo tylko po to, by uruchomić Improv. To dało NeXT przyczółek na tym rynku, który trwał do późnych lat 90., nawet po ich zakupie przez Apple Inc.

Wydanie Windowsa

Po wydaniu na NeXT (wersja znana jako „Black Marlin”) podjęto próby portowania na Windows („Blue Marlin”) i Macintosh („Red Marlin”). Interfejsy API i język programowania dla NeXTSTEP były tak różne od oprogramowania systemowego Windows i Macintosh , że przeniesienie było bardzo trudne. Lotus Improv dla Windows v2.0 (nie było wersji 1.0) dostarczony w maju 1993 r., Działający w systemie Windows 3.1. Podobnie jak wydanie NeXT, wersja dla systemu Windows również zyskała uznanie krytyków, a Byte Magazine zauważył, że jej „użyteczność jest znakomita”.

Pomimo pozytywnych recenzji sprzedaż w systemie Windows była powolna. W marcu 1994 roku Lotus zdecydował się zaatakować ten problem, zmieniając pozycję Improv jako dodatek do 1-2-3, chociaż programy nie miały ze sobą nic wspólnego poza zdolnością Improv do odczytu danych w plikach 1-2-3. Nie miało to wpływu na sprzedaż, a po wydaniu pomniejszej aktualizacji 2.1 prace rozwojowe zakończyły się w sierpniu 1994 roku. Projekt pozostawał w zawieszeniu do kwietnia 1996 roku, kiedy produkt został oficjalnie zabity, wkrótce po zakupie Lotusa przez IBM .

Po improwizacji

Rozczarowująca sprzedaż Improv i ewentualne anulowanie na platformie PC zostały wykorzystane jako studium przypadku w licznych analizach rynku oprogramowania po awarii. Sprzedaż na NeXT można wytłumaczyć ograniczonym udziałem NeXT w rynku, ale awaria na PC była inną kwestią. Wśród preferowanych wyjaśnień znajduje się fakt, że w przeciwieństwie do wydania na NeXT, wersja Windows napotkała silny wewnętrzny opór ze strony 1-2-3 i korporacyjną odpowiedź immunologiczną stał się problemem. Zespoły sprzedaży i marketingu Lotus, dobrze zorientowane w sprzedaży 1-2-3, nie wiedziały, jak sprzedać Improv na rynku, więc po prostu tego nie zrobiły, sprzedając dobrze znane i rozumiane 1-2-3. Inne wyjaśnienia obejmują fakt, że Microsoft Excel był oferowany jako część pakietu Office po marginalnych stawkach, które były w porównaniu z nimi niewielkie, a także kilka błędnych kroków podczas wprowadzania, takich jak brak języka makr lub cofania. Joel Spolsky obwinia za to sam projekt, twierdząc, że był on zbyt doskonale ukierunkowany na określony rynek i brakowało mu ogólności, jaką charakteryzował Excel.

Chociaż Improv zniknął w latach 90., program ten jest czule wspominany w branży i nadal wspomina się o nim w książkach o programie Excel. Kiedy Improv zniknął, szybko pojawiło się wiele klonów Improv. Wśród nich godny uwagi był Lighthouse Design , niemal bezpośredni klon skierowany na rynek finansowy. Quantrix spotkał ten sam los co Improv, kiedy firma została zakupiona przez Sun Microsystems . Po odejściu z Sun Microsystems Peter Murray założył ISP, a następnie B2B o nazwie GoFish, a następnie w 2001 roku trzecią nową firmę o nazwie Quantrix.

koncepcje

Istotą tego, co miało stać się Improv, było rozdzielenie koncepcji danych, widoków danych i formuł na trzy części. Sam arkusz kalkulacyjny zawierałby tylko dane wejściowe. Zamiast odnosić się do danych jako „danych, które akurat znajdują się w tych komórkach”, każdemu zestawowi danych w arkuszu nadano nazwę, a następnie można go było pogrupować w kategorie. Formuły zostały wpisane w osobną sekcję i odnosiły się do danych poprzez ich zakres, a nie ich fizyczną pozycję w arkuszach. Widoki danych, z których niektóre wyglądały jak arkusze kalkulacyjne, inne jak wykresy, mogły być tworzone dynamicznie i nie były ograniczone pod względem liczby.

Aby zilustrować różnicę między systemem Improv a innymi systemami, rozważ proste zadanie polegające na obliczeniu całkowitej sprzedaży produktu, danej sprzedaży jednostkowej miesięcznie i cen jednostkowych. W konwencjonalnym arkuszu kalkulacyjnym cena jednostkowa byłaby wpisywana w jeden zestaw komórek, powiedzmy kolumnę „A”, a sprzedaż w inny, powiedzmy „B”. Następnie użytkownik wpisze formułę w „C”, która mówi „A1 razy B1” (zwykle w postaci takiej jak @times(A:1, B:1) lub =A1*B1 ). Następnie ta formuła musi zostać skopiowana do wszystkich komórek w kolumnie C, pamiętając o zmianie odwołania do A1 na nowe odwołanie do A2 itd. Arkusz może to do pewnego stopnia zautomatyzować, ale prawdziwy problem polega na tym, że po prostu ma nie mam pojęcia, co oznacza formuła. Wszelkie zmiany w układzie arkusza kalkulacyjnego często powodują, że cały arkusz przestaje działać poprawnie.

W Improv po prostu wprowadza się dane do kolumn o nazwie „Cena jednostkowa” i „Sprzedaż jednostkowa”. Następnie można utworzyć formułę, która mówi: „Sprzedaż całkowita = cena jednostkowa razy sprzedaż jednostkowa”. Następnie, jeśli do skoroszytu zostanie dodany widok „Sprzedaż ogółem”, sumy pojawią się tam automatycznie, ponieważ arkusz „wie”, do czego służy formuła.

Ale prawdziwa moc Improv nie stała się jasna, dopóki prace nad projektem już się nie rozpoczęły. Dzięki systemowi grupowania można było zebrać miesięczną sprzedaż w grupy typu „1995” i „1996” i nazwać kategorię „lata”. Następnie ceny jednostkowe można pogrupować według rodzaju produktu, np. „odzież” i „żywność”. Teraz, przeciągając te grupy (reprezentowane przez małe zakładki), widok można szybko zmienić. Koncepcja ta została później wdrożona w postaci tabel przestawnych w kilku produktach.

Zobacz też

Notatki

Cytaty

Bibliografia

Linki zewnętrzne