Wstępniak
Dziś znów troszeczkę obok głownego tematu Bibliotekarza, ale z drugiej strony bardzo blisko tematu nowego systemu Bibliotekarz.NET WWW. Będąc szczęśliwym posiadaczem wolnego weekendu, mogłem poświęcić czas na pracę przy technologiach aplikacji internetowych. Temat o tyle ważny, że przy okazji jest rozpoznaniem ogniem możiwości technologicznych oraz hostingu jaki jest w tym przypadku niezbędny. Mój wybór padł na MVC 4, bazę danych SQL Server i hosting Windows Azure. O ile MVC 4 i SQL Server są dla mnie chlebem powszednim, to Windows Azure był nową przygodą, która o dziwo skończyła się bardzo miło. Jestem pod wrażeniem łatwości korzystania z tej usługi (niewielki zgrzyt pojawił się przy migracji danych z lokalnej bazy danych) i przejrzystości interfejsu.
Geneza aplikacji
Na pomysł projektu wpadłem w piątek wieczór, gdy zmęczony po tygodniu pracy zapragnąłem napić się "kolorowego" drinka. Skierowałem się do mojej skromnej półeczki anonimowego alkoholika w celu wybrania składników. Zmęczonym wzrokiem spojrzałem na zestaw różnokoloroych butelek i zrozumiałem, że nie mam pojęcia jaki drink mogę zrobić. Pomyślałem: jak zwykle czeka mnie godzina ślęczenia przed komputerem, szukaniem przepisów na drinki i być może ciągłym bieganiem i sprawdzaniem czy ja mam sok z grenadyny, czy ja mam alkohol Kahlua, czy ja mam kolejny egzotyczny składnyk drinka… Czy mieliście kiedykolwiek podobne uczucie?
Uznałem, że tak być nie może dłużej. Potrzebuję systemu, któremu powiem: ja w domu mam sok pomarańczowy, sok z limonki, cytrynę (ale mogę ją wycisnąć albo pokroić, więc mam sok z cytryny, plastry cytryny, ćwiartki cytryny), lód w kostkach (ale mogę go też pokruszyć jakby co, więc mam też kruszony), mam wódkę, rum, gin, wermut wytrawny… a Ty drogi systemie powiedz mi szybko co ja z tego mogę fajnego zrobić. I tak w 48h (około 14h pracy) powstał system: http://drinksmixer.azurewebsites.net/
Zasady działania
Podstawową ideę przestawiłem w poprzednim akapicie. Cechy jakie chciałem nadać aplikacji to: prostota i szybkość działania. Rola użytkownika sprowadza się do:
a) założenia konta
b) wybrania z gotowej listy, składników, które posiada już w domu
c) kliknięcia przycisku: Wyświetl listę drinków, które mogę zrobić.
Prostę prawda? Oczywiście funkcjonalność aplikacji może być rozszerzana o kolejne ciekawe funkcje, ale to jak zawsze wymaga czasu. Na dziś dzień jest dodatkowo udostępniona prosta przeglądarka drinków i możliwość dodawania drinków (bardzo prosty interfejs) przez użytkowników. W przyszłości system wzbogaci się o inteligentny system podpowiedzi: jakie składniki użytkownik powinien kupić aby zrobić jak najwięcej możliwych drinków, pojawią się kategoryzację drinków, będę chciał rozbudować zakres informacji widocznych na stronie opisującej sposób przygotowania napoju i wiele, wiele innych.
Pomoc poszukiwana
Siła systemu leży w bogactwie bazy danych drinków. Aktualnie wprowadziłem ich około 20, ale jest to żmudna praca i trochę szkoda mi czasu na to, jak mógłbym go poświęcić na rozwijanie funkcjonalności aplikacji. Dlatego bardzo chętnię nawiążę kontakt/współpracę z kimś kto uważa, że pomysł jest "zacny" i chętnie poświęci swój czas na rozbudowę bazy drinków i składników. Ktoś zainteresowany?
Link do systemu: http://drinksmixer.azurewebsites.net/ (aplikacja wyświetla dane po polsku lub angielsku w zależności od lokalizacji ustawionej w przeglądarce internetowej).
Zapraszam gorąco do komentowania pomysłu, co Wam się podoba, co się nie podoba.
W temacie:
w drinku mojito czytamy:
0 ml – Woda gazowana
Poza tematem
Z tym zerem, to taka trudna sprawa, bo przepis mówi, że ma być splash czyli… odrobinka? A jeśli odrobinka, to ile ml? Ewentualnie mogę wyświetlać w takim przypadku trzy kreseczki: —
Może należy stworzyć nowe kategorie ilościowe: odrobina, szczypta, ile się wgniecie albo na oko? 😀
Brawo, Panie Marku! Mam tylko jedno pytanie… Jak skopiować bazę danych Bibliotekarza.Neta na np. Pendrive?
Są dwie możliwości:
1) W katalogu użytkownika (Moje dokumenty) znajduje się plik mqs.mdb i trzeba go skopiować. Oczywiście, jeżeli nie zmienił Pan domyslnej bazy na inną. W takim przypadku trzeba skopiować plik, który jest używany.
2) Za pomocą menu „Kopia bezpieczeństwa” wskazać miejsce docelowe, gdzie ma być zapisana baza i kliknąć Zapisz.
Już w tej chwili dziękuję Andrzejowi za bezcenne wskazówki dotyczące użyteczności interfejsu. Pomimo, że nie zdążyłem zaimlementować wszystkich zmian, które zostały mi zasugerowane, to mam nadzieje, że aktualny sposób zarządzania składnikami przypadnie wszystkim do gustu.
Pozdrawiam wszystkich testujących i czekam na dalsze wskazówki.