The hardest problem on HackerRank, sorted by Max Score and level "Expert" is Separate The Chocolate. It's worth 250 points and the level "Expert" is the highest one. How to solve it?
Sztuka programowania 2885 dni, 13 godzin, 33 minuty temu 108 źrodło rozwiń
~ MJ Tak, tak – wzrok Was nie myli. Następcą Angulara 2 będzie Angular 4🙂 https://github.com/angular/angular/compare/4.0.0-beta.0…master
Sztuka programowania 2888 dni, 2 godziny, 7 minut temu 335 źrodło rozwiń
Reading time ~2 minutes This post was inspired by a discussion on Reddit that followed my previous post In this post, I will cover a suggestion by BelowAverageITGuy that cut down the total execution time by almost one hour. Saga Before I go further here are some link to the previous posts on the problem of calculating similarities and then optimizing it grew to few post. Here are all of them:How I calculate similarities in cookit?How to calculate 17 billion similaritiesIndependent code in ...
Sztuka programowania 2888 dni, 2 godziny, 7 minut temu 96 źrodło rozwiń
W ostatnim poście opisałem i porównałem wydajność różnych sposobów wykorzystania regexów. Zdecydowanie najlepiej sprawowało się wyrażenie, które przygotowałem za pomocą metody Regex.CompileToAssembly(). Dziś omówię ją nieco dokładniej i podpowiem, jak zautomatyzować cały proces aktualizowania zebranych w oddzielnym assembly regexów.
Sztuka programowania 2888 dni, 2 godziny, 7 minut temu 76 źrodło rozwiń
Z nieistniejącego jeszcze cyklu: pytania algorytmiczne oraz struktury danych u gigantów doliny krzemowej: Google, Amazon, Microsoft etc. Pamięć podręczna cache to pamięć o bardzo szybkim dostępie, której jest bardzo mało. Tworząc procesor twórcy implementują jeden z algorytmów do zarządzania pamięcią, który decyduje, który element z pamięci ma wylecieć, aby utworzyć miejsce dla nowego elementu.
Sztuka programowania 2889 dni, 1 godzinę, 8 minut temu 130 źrodło rozwiń
Myślę, że w każdym biurze/teamie można wyróżnić “specjalistę”. Gościa, który zawsze jest na bieżąco. Wie co nowego na rynku, jaki nowy framework, jaki update, jakie nowe narzędzia. No właśnie tylko, jak on to robi?
Sztuka programowania 2889 dni, 1 godzinę, 8 minut temu 576 źrodło rozwiń
~ MJ Jednym z mniej znanych i dość mocno zapomnianych – subiektywna opinia – przez środowisko programistów jest prawo Demeter. W potocznym języku – zasada jednej kropki. Cóż to takiego?...
Sztuka programowania 2889 dni, 1 godzinę, 8 minut temu 237 źrodło rozwiń
~ MJ Jest w życiu wiele zasad, reguł, którymi się kierujemy. Zazwyczaj nie podążamy jednak ślepo za nimi. Wyciągamy z nich to co jest nam w konkretnej sytuacji najbardziej potrzebne. W programowaniu również.
Sztuka programowania 2891 dni, 3 godziny, 19 minut temu 247 źrodło rozwiń
Often developers as a log store use text files, system events, output console or database. In some cases they use distributed systems such Splunk or Elasticsearch. In this article I would like to present how to store logs in the form of objects, rather than plain text, which also offers all sorts of graphs and charts called dashboards.
Sztuka programowania 2891 dni, 3 godziny, 19 minut temu 212 źrodło rozwiń
One thing that surprised me the most about the C# was the fact that it does not support multiple inheritances (which I knew from the C++). How can we deal with that? Of course, we use interfaces, since one class can implement more than one. But quickly we come to the very common problem...
Sztuka programowania 2896 dni, 2 godziny, 1 minutę temu 188 źrodło rozwiń
~ MJ Code review, czyli przeglądanie kodu innego programisty w zespole, uważam za jedną z najlepszych technik tworzenia dobrego kodu i osobistego rozwoju – niezależnie od tego, czy ktoś przegląda moją pracę, czy ja jego. Pamiętam jak dziś swoje pierwsze code review. Ukończyłem pisanie jednego dosyć sporego modułu. Przyzwyczajony do tego, że zawsze po prostu commitowałem swój kod, który działał, myślałem, że jestem prawdziwym artystą, a mój kod jest perfekcyjny. Och, jakże byłem głupi. Review zakończyło...
Sztuka programowania 2896 dni, 2 godziny, 1 minutę temu 256 źrodło rozwiń
Test-Driven Development pojawia się w kontekstach :techniki,metody,metodologii i metodyki. Które z tych określeń poprawnie definiuje TDD? Zacznijmy od definicji poszczególnych pojęć: technika: (1) «wiedza na temat praktycznego wykorzystania osiągnięć nauki w przemyśle, transporcie, medycynie itp.; też: praktyczne wykorzystanie tej wiedzy» (2) «metoda» metoda: «świadomie stosowany sposób postępowani...
Sztuka programowania 2896 dni, 22 godziny, 24 minuty temu 77 źrodło rozwiń
Jeśli dopiero zaczynasz swoją walkę z JavaScriptem, to przeskok pomiędzy “nie wiem o co chodzi” a “używam Angulara” może się odbyć nie do końca świadomie. Mając za sobą kilka tygodni stażu trudno wywnioskować, że dany framework jest właśnie tym czego potrzebujesz. Internet huczy, nie chcesz zostać w tyle więc po prostu próbujesz – konsekwencje przyjdą później.
Sztuka programowania 2897 dni, 16 godzin, 4 minuty temu 152 źrodło rozwiń
Reading time ~6 minutes Last time I’ve shown how I’ve gone from 34 hours to 11. This time we go faster. To go faster I have to do less. The current implementation of Similarity iterates over one vector and checks if that ingredient exists in the second one. Since those vectors are sparse the chance of a miss is big. This means that I am losing computational power on iterating and calling TryGetValue. How to iterate only over the mutually owned ones and do it fast? Saga Before I go furth...
Sztuka programowania 2898 dni, 3 godziny, 17 minut temu 59 źrodło rozwiń
~ MJ Jakoś na początku tego roku miałem prezentację na wrocławskiej grupie .NET dotyczącą unit testingu. Muszę powiedzieć, że byłem bardzo pozytywnie zaskoczony liczbą obecnych osób, co tylko pokazuje, jak ważne są dla nas testy jednostkowe (albo chcemy, żeby stały się ważne)🙂
Sztuka programowania 2901 dni, 3 godziny, 37 minut temu 202 źrodło rozwiń
Jeśli estymacja czasowa nie sprawdza się w naszym projekcie (co jest wielce prawdopodobne w przypadku oprogramowania), to możemy się posłużyć estymacją relatywną. Wielkość relatywna ma, w przeciwieństwie do estymaty bezwzględnej (najczęściej czasowej), ogromną przewagę, gdyż: Minimalizuje błędy związane z przewidywaniem czasu poświęconego na złożone i skomplikowane zadania...
Sztuka programowania 2901 dni, 3 godziny, 37 minut temu 157 źrodło rozwiń
Sometimes it happens that we use mechanisms/features of specific language without beeing aware of it. That’s fine, but if you’ll want to discuss your code in a future to the audience or coworkers, soon or later you’ll be forced to learn it and understand (or at least name it using technical nomenclature). Therefore, today I’m going to discuss two related „mechanisms” of C# which are covariance and contravariance. Covariance Covariance is a type conversion from the specific type to the more general (ba...
Sztuka programowania 2901 dni, 16 godzin, 51 minut temu 189 źrodło rozwiń
Czy warto czytać książki programistyczne?
Sztuka programowania 2902 dni, 2 godziny, 38 minut temu 228 źrodło rozwiń
Reading time ~5 minutes The previous post described the methodology I’ve used to calculate similarities between recipes in cookit. If You haven’t read it I’ll give it 4 minutes because it will make understanding this post easier. Go one, I’ll wait. It ended on a happy note and everything seemed to be downhill from there on. It was until I tried to run it. It took long. Very long. How long? I don’t know because I’ve canceled it after about one hour. Going with a famous quote (probably from E...
Sztuka programowania 2904 dni, 3 godziny, 11 minut temu 141 źrodło rozwiń
Implementacja wzorca poleceń (command pattern).
Sztuka programowania 2904 dni, 3 godziny, 11 minut temu 301 źrodło rozwiń