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
popularne tematy: programowanie

Nie umiem w Snapchat – wywiad ze samym sobą

Od kilku lat byłem aktywnym użytkownikiem aplikacji Snapchat. Obecnie jestem pasywnym członkiem społeczeństwa opisywanej aplikacji, który bardziej ogląda czyjeś relacje z różnych czynności życiowych, niż wrzuca godziny materiałów na serwery tejże aplikacji. Dziś w swoim artykule chciałbym przedstawić, co obecnie odpycha mnie od tej platformy, a co powinno być poprawione.

Wywiad ze samym sobą

Autorze drogiego bloga o co chodziło w „Nie umiem w Snapchat”?

Powiem szczerze, że po dłuższej przerwie spowodowanej tym że korzystałem z telefonu, który miał platformę Windows Phone powróciłem ponownie do Androida. Pierwszą rzeczą, którą zrobiłem po rozpakowaniu telefonu była instalacja Snapchata. I nastał kryzys, który trwa do dziś, a właściwie codziennie odpowiadam na pytanie w swoim umyślę „Co mam tam publikować?” zawsze te pytanie prowadzi do błędnej odpowiedzi. Przeważnie to co publikuje powoduje złość i odpowiadanie na głupie pytania obserwujących.

Dlaczego chcesz skasować konto?

Jest wiele problemów powodujących dyskomfort, z korzystania tej aplikacji. Na początek powiem, że ta aplikacja z wersji na wersje jest bardzo ociężała dla pamięci operacyjnej i baterii mojego urządzenia.

Licznik Blogowy 2017 — niezbędnik blogera (Chrome/Opera/Firefox)

Nadeszła ta chwila. Po wielu latach oficjalnie światło dziennie ujrzała finalna wersja Licznika Blogowego. Dodatku do przeglądarki www, który pozwala na zbieranie danych o każdym blogu na portalu (nawet bez logowania!) i przedstawieniu statystyk w formie tekstowej i graficznej.

Historia

Historia Licznika Blogowego sięga roku 2014. Wówczas to na początku roku powstaje dodatek do Chrome, który zbiera dane odnośnie wyświetleń wszystkich wpisów blogowych zalogowanej osoby. W przeciągu najbliższych miesięcy wtyczka otrzymuje możliwość instalacji na przeglądarkach Firefox i Opera, a także tworzenie wykresów na podstawie zebranych danych.

Niestety w przeciągu lat portal przeszedł na https, a możliwość instalacji wtyczek spoza marketu stała się utrudniona lub nawet niemożliwa na wspieranych przeglądarkach. W ostatnim czasie otrzymałem sporo zapytań odnośnie reaktywacji wtyczki i przyszedł ten czas, aby zaprezentować finalną wersję.

SONY a optymalizacja systemu

Jak każdy z nas wie , Android jak i inne systemy mają problem z defragmentacją i optymalizacją , gdzie SONY nagle zaczęło dużą fale aktualizacij . Mowa dajmy na to nie flagowego np. SONY E5 . Owy telefon ma : Mediateka MT6735 (4x 1,30Ghz) i do tego 1,5 Gb ramu i 16 Gb pamięci wewnętrznej , a android 7.0 mógłby na nim pracować śmiało . Sony chcąc ratować się przed falą krytyki , że nie będzie na ten telefon Androida 7.0 zaczęło nagle wypuszczać updaty , które mają go zoptymalizować , zamiast udostępnić binaria dla nowszego Androida by developerzy z XDA itp. zrobili sami aktualizację no i roota . Co do reszty nie tylko ten smartfon , ale i inne nawet i flagowe otrzymają aktualizację optymalizujące system . Co do przykładowego powyższego modelu , update który się zapowiada będzie miał oznaczenie 37.0.A.2.183 , gdzie obecny build to 37.0.A.2.156 , update ten zapowiada się za 26 dni , a następny za ok 110 dni od wprowadzenia updatu 183. Miejmy nadzieje , że Sony jak i inni producenci w końcu poprawią ten system , lecz poza tym do tej pory nie wiadomo , co dokładnie jest w 183 ... :) . 

Obsługa wyświetlacza LCD z sterownikiem Hitachi HD44780

Wstep do wpisu

Witajcie, na wstępie chciałbym zaznaczyć, że wpis ten powstał, jako ciekawostka. Pokazuje, jak bez zewnętrznej biblioteki wyświetlać znaki na wyświetlaczu LCD zgodnym z sterownikiem HD44780.

Wyswietlacz LCD

Sam wyświetlacz wymyślili Japończycy. Stał się standardem, w którym każda osoba bawiąca się mikrokontrolerami powinna mieć raz w życiu w rękach. Wyświetlacz taki może posłużyć przykładowo do wyświetlenia rezultatu przetwarzania ADC.

Sam wyświetlacz można nabyć w różnych wersjach montażowych. Czasami może zajść potrzeba posiadania lutownicy, aby zlutować wyprowadzenia z goldpinami. Badź w wersji uproszczonej, która jest wlutowana z konwerterem magistrali I2C.

Wyświetlacz ten działa w trybie 8 i 4 bitowym. Tryb 8 bitowy jest bardzo rzadko używany, ze względu na potrzebę zajęcia większej ilości pinów.

Natomiast w trybie 4 bitowym ilość linii potrzebnych do podpięcia wyświetlacza z mikrokontrolerem to 6 lini. Dodatkowo dochodzi jeszcze podpięcie VCC, GND, linia na regulacje kontrastu, wyjscie A i K.

Co potrzebuje?

Istnieją 2 opcje :

  • W zasadzie nic, korzystamy z

Microsoftu przygody z Javą

Zakładając chwilowo, że mam jakichkolwiek „stałych czytelników”, przypuszczam, że dość prędko dostrzegli oni, że nie przepadam za Javą. Jestem świadom tego, jaki problem usiłowała rozwiązać, twierdzę jednak, że boleśnie widocznym jest to, że cierpi ona na przypadłości pioniera: przed Javą nie istniało nic podobnego (a na pewno nie na taką skalę), zaoferowane rozwiązania były technicznie eleganckie i bezkonkurencyjne, lecz wciąż było to niejako pierwsze podejście. Mimo wielu nowych iteracji i niezwykle długiej drogi przebytej przez Javę, jej specyfika niezmiennie mnie denerwuje. Dostaję ciężkiej, plamistej cholery widząc ładowanie NetBeansa i Eclipse’a, notorycznie napotykam na małe, acz rozwścieczające niedoróbki (zwane „decyzjami projektowymi”), a przebywanie w tym samym pomieszczeniu z komputerem zawierającym jakiekolwiek oprogramowanie korzystające ze Swinga skraca mój lifespan o wiele miesięcy.

Tworzenie wtyczek do Visual Studio: podsumowanie na koniec konkursu

Właśnie stuknął 20. wpis w konkursie Daj Się Poznać 2017, zatem przyszedł czas na podsumowanie prac na koniec trwania trzymiesięcznych zmagań...

Statystycznie

W tym czasie wpisy miały sumarycznie prawie 42 tysiące wyświetleń. Najbardziej obleganym wpisem był ten o hakowaniu Visual Studio, czyli o dobieraniu się bezpośrednio do poszczególnych elementów UI poprzez Snoopa. Niemalże identyczną ilość wyświetleń ma wpis odnośnie aplikacji (i nie tylko) wspomagających zdrową pracę przy komputerze: Zdrowe ciało, zdrowy duch, zdrowy programista — przegląd aplikacji. Oczywiście wszystkie wpisy dostępne są pod linkiem grupującym moje artykuły.

Bad Word Detector — własna wtyczka do detekcji wulgaryzmów w Visual Studio

Tworząc w IDE zapewne nieraz natknęliście się na kod źródłowy, który zawierał wulgaryzmy czy to w postaci komentarza, czy to w postaci nazw zmiennych. Również my sami lubimy wstawić gdzieś w kodzie "kupę" lub inny równie ciekawy zwrot.

Niestety czasem takie "kwiatki" wychodzą na produkcję i nie są może czymś karygodnym lub niebezpiecznym, ale wizerunkowo raczej nikt na tym nie zyskuje. Ostatnio pisał Niebezpiecznik chociażby o "fakach" na stronce OKE

a kilka dni wcześniej podobnie "wpadł" Citibank.

Tworząc na konkurs wtyczkę Healthy With VS wpadłem na pomysł, aby stworzyć dodatek do Visual Studio, który mógłby zaradzić takim problemom. Bad Word Detector, bo tak nazwałem ten nano-projekt, wykrywa wulgaryzmy w kodzie źródłowym edytora i je zaznacza.

Zapisywanie zdarzeń z wtyczki do Visual Studio w Activity Logu

Dzisiejszy wpis odnośnie tworzenia wtyczki do Visual Studio będzie bardzo szybki i konkretny. W każdej aplikacji przychodzi moment na to, aby zalogować do pliku jakieś zdarzenie. Może być to notka o wyłapanym wyjątku, bądź też tylko zapis czysto informacyjny.

Zapis w Activity Log

Dodatki do IDE od Microsoftu mogą zapisywać zdarzenia do Activity Loga. W celu umieszczenia własnego wpisu należy pobrać serwis o typie SVsActivityLog i rzutować go na interfejs IVsActivityLog:

var log = serviceProvider.GetService(typeof(SVsActivityLog)) as IVsActivityLog;

gdzie serviceProvider jest obiektem dziedziczącym po IServiceProvider (w naszym przypadku jest to obiekt klasy Package).

Logowanie odbywa się przy pomocy metody LogEntry:

log.LogEntry((UInt32)__ACTIVITYLOG_ENTRYTYPE.ALE_ERROR, pluginName, message);

Pierwszy parametr określa poziom logowania - jest nim enumerator __ACTIVITYLOG_ENTRYTYPE i posiada od trzy wartości: błąd (ALE_ERROR), ostrzeżenie (ALE_WARNING) i informacja (ALE_INFORMATION). Drugi parametr opisuje źródło logu, zaś trzeci parametr jest tekstowym opisem loga.

Aktywacja i przeglądanie logówLogi składowane są przez IDE domyślnie w pliku

Windows Template Studio — szybki start w programowaniu aplikacji Universal Windows Platform

Osoby programujące z Universal Windows Platform dostały właśnie świetny dodatek do Visual Studio 2017 - Windows Template Studio. Prosty kreator od Microsoftu, który stworzy podstawy projektu UWP z wybranym funkcjonalnościami, zgodnie z dobrymi praktykami programowania.

Windows Template Studio

Dodatek do VS2017 jest prostym kreatorem, bardzo pomocnym przy rozpoczynaniu tworzenia nowej aplikacji UWP. Kreator pozwoli deweloperom na wybranie typu projektu, frameworku MVVM, stowrzeniu podstawowych stron i ficzerów. W ten sposób stworzony zostanie gotowy szablon dla dewelopera, który zawiera wybrane elementy, z zainicjalizowanymi strukturami zgodnie z dobrymi praktykami. Programista na starcie otrzyma zatem bazę do rozwoju własnej aplikacji. Wystarczy już tylko usiąść i zacząć pracę.

Windows Template Studio jest rozwinięciem pomysłu Windows App Studio, które pozwalało na "wyklikanie" aplikacji UWP online. Windows Template Studio jest zaś kreatorem, który tworzy dla dewelopera bazę do późniejszej pracy nad aplikacją.

Kreator

Kreator dostępny jest z menu File-New-Project, znajdziemy go szablonach Windows Universal:

ASP.NET — C# z JavaScript'em w pokojowym współistnieniu

Tło

Pierwszy raz z problemem wywołania funkcji bądź przekazania zmiennych z kodu pisanego w C# do kody JavaScript’owego spotkałem się przy okazji generowania wykresów z użyciem biblioteki Google Charts. Moja aplikacja napisana w ASP.NET MVC korzystała z bazy danych stworzonej przy użyciu Entity Framework. Model przekazywany do widoku z kontrolera nie posiadał w sobie żadnych danych. Były one pobierane z bazy dopiero w momencie wywołania odpowiednich funkcji. I tu pojawił się problem. W jaki sposób dane uzyskane w ten sposób „wstrzyknąć” do tablicy w JS, na podstawie której tworzony był wykres?

Struktura

Dla ułatwienia przybliżę tylko tę część struktury projektu, która jest istotna:

Models

  • /BrandC.cs – klasa modelu
Views/Brand
  • /Index.cshtml – widok
  • /ChartsView.cshtml – widok częściowy renderowany wewnątrz index.cshtml
Views/Shared
  • /_Layout.cshtml – layout strony, zawiera sekcję head oraz body, wewnątrz body w <div id=”content”> </div> renderowane są widoki.