Strona używa cookies (ciasteczek). Dowiedz się więcej o celu ich używania i zmianach ustawień. Korzystając ze strony wyrażasz zgodę na używanie cookies, zgodnie z aktualnymi ustawieniami przeglądarki.    X

M$ Rage Rush!

Wraz z pojawieniem się informacji na DP o ograniczeniach związanych z VS 11 Express i przeczytaniu komentarzy naszło mnie kilka przemyśleń.

Dla przypomnienia wspomniane ograniczenia to:
- możliwośc tylko aplikacji w UI Metro na desktopy
- appsy na WP7
- ażurowe rozwiązania w chmurze
- websites

Oczywiście podniósł się lament jaki M$ to złodziej i ogranicza zwykłych użytkowników, blokuje technologie no i jeszcze raz - oskubuje nas z pieniędzy.

Po pierwsze wypadałoby rozdzielić zwykłych użytkowników od profesjonalistów w branży IT. Dla tych drugich właśnie są przewidziane produkty z członem PROFFESIONAL. Odkąd pamiętam VS PRO zawsze oscylował w cenie ok. 1000 za upgrade i 2000 za nową wersję (ceny oczywiście zależne od sklepów i kursu USD) ale mniej więcej ceny były na podobnym poziomie przez wszystkie wersje 2003-2010 i zbliżone do innych produktów (porównywałem daaaaaaaaaawno temu z Borland C++ Builder 5) i nie można powiedzieć aby było to jakieś wyjątkowe zdzierstwo.

No ale zaraz, nie wszyscy się rodzą profesjonalistami, co z takimi ludźmi? No dla nich jest wersja Express właśnie. Jest za darmo, jest ograniczona no ale przecież M$ nie jest fundacją charytatywną z kolei. Za co tak naprawdę płacimy? Tylko za IDE, bo kompilator CS.EXE (o ile się nie mylę co do nazwy) jest za darmo. Chcesz to możesz podpiąć pod Eclipse czy inne IDE, a nawet pisać w notatniku i z lini komend kompilować kod.

Co mnie skłoniło na wersję PRO w przypadku VS 2010? Niemożliwość dodawania pluginów, budowanie tylko projektów (project), a nie rozwiązań (solution), gdzie można było wiele projektów łączyć i ograniczenia aplikacji bazodanowych. Ale wszystko szło obejść. Solucje budowałem wykorzystując kilka odpalonych VS Express, wersjonowanie kodu załatwiałem poza IDE za pomocą TortoiseSVN. W firmie to oczywiście podstawowym warunkeim jest prędkość dostarczenia aplikacji, stąd przejście na wersję PRO.

Ale ogólnie - da się? Da!

To mam nadzieję, że kwestie finansowe posunięcia M$ chyba sobie wyjaśniliśmy - profesjonaliści kupią wersję PRO za 500 USD, firmy kupią wersję Team Fundation, a początkujący programista lub hobbysta ma wersje Express, a jak chce zbudować coś skomplikowanego to nakładem pracy i kombinowania też da rady. A jak nie da rady? To Google/Bing/Yahoo do pomocy i niech szuka rozwiązania problemu.

A co do drugiego problemu - samych ograniczeń (tych nowych).

Mamy 2 wiodące systemy mobilne - Android i iOS, poza nimi swoje 5 minut miał WebOS (do dzisiaj posunięcia HP związanego z jego pozbyciem się nie rozumiem), BB OS też coś próbuje działać (najciekawszy pomysł to łatwe portowanie aplikacji z Androida) no i WP7 oraz nadchodzący Win 8.

Każdy z tych systemów ma swoje specyficzne podejście do kodu i interfejsu. Najważniejszymi czynnikami decydującym o sukcesie rozwiązania to cena (co w przypadku Apple jednak rozwala teorię ale Apple to nie fanboizm tylko ale i stan umysłu :) ) oraz ilość/różnorodność aplikacji.

M$ wyszedł z ciekawego moim zdaniem punktu widzenia - profesjonaliści mają swoje ulubione technologie (niektórzy wciąż programują w WinAPI), inni kochają zwykłe desktopowe aplikacje, a jeszcze inni piszą w XAMLu. Potrzeba nowych aplikacji w nowych technologiach? To rozpropagujmy to wśród ludzi, którzy najłatwiej się na to przestawią - freszynki.

Nacisk na interfejs Metro ma na celu umocnić pozycję M$ wśród systemów operacyjnych. Zobaczcie sami. Windows przestaje ewoluować, do końca świata zatrzymuje się na etapie WinXP, tymczasem Linux (i jego pochodne) oraz MacOS X (i jego pochodne) zmieniają świat. M$ zostaje w tle, plajtuje, programiści M$ tracą pracę i albo się przestawią na co innego albo też plajtują.

Gdyby nowy pomysł M$ na interfejs był do bani i zupełnie nieudany to by nie sprzedał ani jednego egzemplarzu telefonów z WP7. Win Mobile 6 się zestarzał, więc nie będzie montowany na tabletach, a Win 8 potrzebuje aplikacji i programistów. Nie chcesz iść za nowymi technologiami M$ to pozostań tez przy starym środowisku. Przecież nie przestanie ono z dnia na dzień działać.

Suma sumarów - krok M$ był jak najbardziej konsekwentny w stosunku do jego polityki związanej z systemami operacyjnymi, a jednoczesnie nie pozostawia na lodzie istniejących technologii i ludzi stawiających swoje kroki w programowaniu. 

windows programowanie urządzenia mobilne

Komentarze

0 nowych
Frankfurterium   9 #1 25.05.2012 14:42

Punkt widzenia imo bardzo sensowny. Człowiek to już taka istota, którą czasem przemocą trzeba zmuszać do postępu. Rozumiem to, chociaż ciągle nie mogę się przyzwyczaić do nowego interfejsu od MS...

djfoxer   17 #2 25.05.2012 16:54

Jak ktoś jest uparty, to może za free programować na desktop w SharpDevelop lub pisać pod VS2010.

Druedain   13 #3 25.05.2012 16:59

Jeśli faktycznie powodem zmian w VS jest kwestia chęci promowania interfejsu Metro, to… to oznacza to, iż Metro to fail, skoro by zachęć programistów do tworzenia tego typu programów, trzeba ludzi na siłę uszczęśliwiać.

Mimo wszystko bardziej niezrozumiałym posunięciem w kwestii najnowszego VS jest kwestia wycofania wsparcia dla WinXP kompilowanych aplikacji. Jak wielu ludzi uważam, że XP powinien odejść na zasłużoną emeryturę już wiele lat temu, ale akurat MS uważał inaczej i przedłużył wsparcie dla WinXP. Dlaczego więc teraz MS zaczyna sam ten system udupiać? Nie można zjeść ciastka i mieć ciastka. Tak samo z resztą było wcześniej z IE9…

„freszynki”? Muszę to sobie zapamiętać :) .

PS Raczej powinno być summa summarum.

GL1zdA   11 #4 25.05.2012 18:04

Lament podniósł się jak zawsze i najgłośniej krzyczą ci, którzy nigdy nie programowali. MS zawsze promował w najsłabszych wersjach tylko najnowsze technologie - nawet Visual C++ 2010 Express nie miał np MFC czy edytora zasobów, było jasne, że kierunkiem jest .net. Dziś MS wprowadza Metro i wygląda na to, że myśli o nim bardzo poważnie - nawet klasyczne programowanie Windows, to dziś programowanie Metro (warto się zaopatrzyć, póki kosztuje $10): http://www.charlespetzold.com/
Dlatego układ jest prosty - dostajecie za darmo narzędzia do wypełnienia naszego nowego środowiska. A dla najbardziej opornych jest darmowa wersja 2010. I masa narzędzi spoza MS z GCC na czele.

iluzion   5 #5 25.05.2012 18:06

"Oczywiście podniósł się lament jaki M$ to złodziej i ogranicza zwykłych użytkowników, blokuje technologie no i jeszcze raz - oskubuje nas z pieniędzy."

Czytałem pobieżnie komentarze, ale nie kojarzę, żeby ktoś pisał, że MS to złodziej lub oskubuje z pieniędzy. Nikt nie zmusza do używania VS Express (no chyba, że na studiach). Co najwyżej będzie się piractwo szerzyć i wtedy to MS będzie narzekać na złodziejstwo. Nie blokuje też technologii, wręcz przeciwnie. Jedynie ogranicza użytkowników lub inaczej -- wymusza zmiany.

"Chcesz to możesz podpiąć pod Eclipse czy inne IDE, a nawet pisać w notatniku i z lini komend kompilować kod."

Jest jeszcze Microsoft Visual Studio 2010 Shell (Integrated) (przynajmniej na razie), czyli "gołe" VS z możliwością doinstalowania obsługi innych języków jak np. F# czy IronPython.

http://www.microsoft.com/en-us/download/details.aspx?id=115

Problem z tym, że to rozwiązanie też prezentuje ograniczone możliwości (brak możliwości tworzenia aplikacji okienkowych, jeśli mnie pamięć nie myli). Poza tym jutro może go nie być i to jest największy problem związany z dużymi firmami typu Microsoft. Równie dobrze VS Express może jutro zniknąć i nikt na to nie będzie miał wpływu.

Oczywiście, że można pisać programy w notatniku i w niektórych językach pisanie w notatniku nie jest niczym nadzwyczajnym. Np. w Pythonie po zainstalowaniu mamy dostęp do większości potrzebnych narzędzi bezpośrednio z wiersza poleceń. Jest debugger, profiler itd. Można łatwo zmierzyć czas wykonywania funkcji czy innego kawałka kodu, sprawdzić liczbę referencji do obiektu itp. Wraz z PyQt dostępny jest wygodny Designer do projektowania aplikacji okienkowych, można zainstalować TortoiseHg, czyli narzędzia graficzne dla systemu kontroli wersji Mercurial (swoją drogą interfejs TortoiseHg jest napisany w PyQt, a sam Mercurial w Pythonie)... no i mamy środowisko programistyczne, tyle że nie zintegrowane w jednym oknie. Wizualnie różnica jak między Gimpem, a Photoshopem.

_qaz7   6 #6 25.05.2012 18:32

MS zrobił kilka takich niemiłych kroków.
Używając VS11 Express masz pewność, że Twoja aplikacje uruchomią tylko posiadacze Win8, bo na niczym poniżej METRO nie będzie. Jeśli chcę jednak pisać aplikacje desktopowe - wydasz $500 i się okazuje, że dla C/C++ runtime z VS11 wymagają co najmniej Visty, więc na XP nic nie uruchomisz. Co prawda w VS2010 można wybrać z jaką wersją runtime'a ma się linkować aplikacja, ale nie wiadomo czy taka możliwość pozostanie - jako, że chyba nikt jeszcze nie widział wersji PRO gdzie można by to sprawdzić.

Co do tworzenia w VS11 Express aplikacji Metro UI trzeba pamietać, że rozpowszechniać takowe można tylko przez microsoftowy MARKET bo aplikacje mają przypisane klucze cyfrowe do systemu- ściągając je ze sklepu są podpisywane specjalnie pod Twój system, także nie będziesz miał np, prostej możliwości napisania swojej aplikacji, wrzucenia na stronę i udostępnienia go dla każdego kto ją odwiedzi, bo nikomu się to nie uruchomi na ich Win8.

Oczywiście możesz taką swoją aplikację odpalić na innym kompie z win8 ale wcześniej ten ktoś musi na swoim systemie wygenerować klucz (a być może do tego będzie potrzebował zainstalowania VS lub SDK - nie wiadomo) a Ty potem musisz app buildować z tym kluczem i dopiero będzie można taką aplikację uruchomić na tym docelowym kompie.

Także z tymi aplikacjami metro ui nie jest tak miło, a już inną sprawą jest to, że Metro UI z pełnoekranowymi aplikacjami nie działającymi w tle nadają się do specyficznych zadań - np. gry, ale w żadnym wypadku jako aplikacje użytkowe, stąd fajnie jednak by było gdyby można było jednak tworzyć aplikacje desktopowe - nawet na własny użytek.

Niby można skorzystać z VS2010 Express - no i tutaj jest właśnie wielka niewiadoma - bo po wyjściu SDK dla windows 8 może się okazać, że ten współpracuje tylko z VS11 wiec na VS2010 nie będziesz mógł wykorzystać właściwości desktopowego Win8 i

kółko się zamyka - albo piszesz pod metro i wrzucasz w sklepik (nawet jeśli chcesz za darmo to rozpowszechnić) - płacąc przy tym jakiś abonament developerski, albo kupujesz za $500 VS2011 PRO i piszesz aplikacje desktopowe, ale odcinasz od nich użytkowników XP, albo zostajesz z VS2010 Express który być może nie będzie mógł korzystać z features'ów Win8.

alucosoftware   7 #7 25.05.2012 20:14

@_qaz7
Z tymi kluczami to już przesadziłeś...

_qaz7   6 #8 25.05.2012 21:15

@alucosoftware
"Z tymi kluczami to już przesadziłeś..."

nie przesadziłem z niczym - Microsoft przecież dokładnie powiedział - jedyną platformą dystrybucji aplikacji Metro jest marketplace - i to nie zapisy licencyjne mają to gwarantować, ale właśnie podpisywanie aplikacji cyfrowymi kluczami. Jest to model wprost zaczerpnięty z iOS i sposobu dystrybucji na tej platformie. Inaczej, mógłbyś po ściągnięciu ze sklepu aplikacji przenieść taką paczkę na inny komputer i uruchomić - a nie będziesz mógł tego zrobić nawet z darmowymi aplikacjami - gwarantuję.

fenixproductions   6 #9 25.05.2012 21:47

Przestałem czytać po wpisie dotyczącym braku solucji w 2010 Ex.
W moim VS Solution Explorer nadal pozwala mi trzymać kilka projektów w jednej solucji.

alucosoftware   7 #10 26.05.2012 08:43

@_qaz7

Poczytaj troszkę więcej na temat cyfrowych sygnatur i podpisywania aplikacji i do czego te mechanizmy są wykorzystywane na platformie .NET...

Druga sprawa dotyczy:
"...Co prawda w VS2010 można wybrać z jaką wersją runtime'a ma się linkować aplikacja, ale nie wiadomo czy taka możliwość pozostanie - jako, że chyba nikt jeszcze nie widział wersji PRO gdzie można by to sprawdzić."

Skoro udostępniona jest wersja rozwojowa VS Ultimate to sprawdź "czy taka możliwość pozostanie".

Dorosłe życie opiera się na stwierdzeniach, a nie przypuszczeniach, które tylko niepotrzebnie wywołują falę niczym nieuzasadnionej krytyki. I nie chodzi o to, żeby się teraz obrażać.

pciproblem   6 #11 27.05.2012 16:24

@@_qaz7
"że Twoja aplikacje uruchomią tylko posiadacze Win8"
no nie do końca bo coś co jest napisane w METRO będzie działać na: WIN8, WIN RT i WP8 a to duża różnica....

DonM$   9 #12 28.05.2012 11:24

Czyli pozostaje przejść na sharpdevelop, ponieważ nijak nie będzie się dało użyć .net 4.5 i wyżej w vs 2010 express.