Gynvael + livecoding stream

Gynvael + livecoding stream
Gynvael Coldwind
  • Rejestracja:ponad 21 lat
  • Ostatnio:16 dni
  • Lokalizacja:Zurich, Switzerland
  • Postów:457
17

user image
EDIT: Trochę przeedytowałem ten post, tak aby zawierał trochę więcej istotnych informacji.

Podstawowe informacje
Język: Polski
Gdzie: http://gynvael.coldwind.pl/live (przekierowanie na YT)
O czym: programowanie, re, security, osdev, ctfy

Język: Angielski
Gdzie: http://gynvael.coldwind.pl/live-en (przekierowanie na LC)
O czym: security/hacking, ctfy, re

Kod źródłowy ze streamów
https://github.com/gynvael/stream

Archiwum streamów

Starsze:
Livecoding: http://www.twitch.tv/gynvaelpl/profile
https://www.livecoding.tv/gynvael/videos

Postaram się w tym wątku wrzucać też info o kolejnych streamach (tak, żeby nie tworzyć niepotrzebnie nowych), więc zainteresowanych kolejnymi streamami zachęcam do kliknięcia 'Obserwuj wątek' po prawej stronie.

Komentarze, propozycje tematów itp. mile widziane :)


peace,
gynvael.coldwind//vx "Imagination is more important than knowledge..." Albert Einstein
edytowany 5x, ostatnio: Gynvael Coldwind
KA
  • Rejestracja:prawie 21 lat
  • Ostatnio:6 dni
  • Postów:700
0

Będzie coś jeszcze?:)


Kto nigdy nie zrobił var dupa niech pierwszy rzuci kamień.
Gynvael Coldwind
  • Rejestracja:ponad 21 lat
  • Ostatnio:16 dni
  • Lokalizacja:Zurich, Switzerland
  • Postów:457
2

Będzie, a jak :)

Następny stream:
Czwartek 18:45 - 20:30
Gdzie: tym razem twitch.tv/GynvaelPL (w ramach testów)
Temat: Będę kontynuował wątek dla początkujących, czyli kółko i krzyżyk (jako przykład czegoś obiektowego) - ostatnio skończyłem prostą wersję konsolową, a teraz do zaproponowanej architektury podepnę TCP/IP, oraz pobawię się trochę konsolą Windowsa, żeby wersja konsolowa wyglądała trochę lepiej (ta część prawdopodobnie będzie w C++, ale potem pokaże jak to w Pythonie zrobić też).

(Wątek dodawania komendy do cmd będę kontynuował na kolejnym streamie (pewnie w weekend))


peace,
gynvael.coldwind//vx "Imagination is more important than knowledge..." Albert Einstein
DI
załóż fanpage na facebooku :D
KA
  • Rejestracja:prawie 21 lat
  • Ostatnio:6 dni
  • Postów:700
0

Czy stream będzie nagrywany? Bo kończę pracę o 20 i mogę nie zdążyć :)


Kto nigdy nie zrobił var dupa niech pierwszy rzuci kamień.
Gynvael Coldwind
Tak, jest nagrany :)
Gynvael Coldwind
  • Rejestracja:ponad 21 lat
  • Ostatnio:16 dni
  • Lokalizacja:Zurich, Switzerland
  • Postów:457
2

Kolejny stream (z wątku RE/patching/cmd) odbędzie się dzisiaj (14.02) o 16:00 na twitchu - http://www.twitch.tv/GynvaelPL ;)


peace,
gynvael.coldwind//vx "Imagination is more important than knowledge..." Albert Einstein
T1
  • Rejestracja:prawie 11 lat
  • Ostatnio:prawie 5 lat
  • Postów:16
1

Czekamy na kolejny :)

Gynvael Coldwind
  • Rejestracja:ponad 21 lat
  • Ostatnio:16 dni
  • Lokalizacja:Zurich, Switzerland
  • Postów:457
1

Będzie następny :) Ale najpierw, coś z zupełnie innej beczki - ankieta: twitch czy livecoding?
https://docs.google.com/forms/d/13ZAKcpZf8lF8C3AeKSEDXMrOaBVPwKb8mkhX17dA1VA/viewform


peace,
gynvael.coldwind//vx "Imagination is more important than knowledge..." Albert Einstein
vpiotr
  • Rejestracja:ponad 13 lat
  • Ostatnio:prawie 3 lata
0

Fajny pomysł.
Przydałoby się dopisanie gdzieś pod filmem jakieś hasła szczególne typu "używając IDA" i ew. jaki jest cel ćwiczenia / platforma OS.

Gynvael Coldwind
Yup, dobry pomysł. Jak skończę testować różne platformy to muszę trochę lepiej organizacyjnie do tego podejść I guess.
NG
  • Rejestracja:prawie 10 lat
  • Ostatnio:około 7 lat
  • Postów:278
0

siedzisz na 1 monitorze, czy akurat stream był na 1 monitorze?
da się w ogóle jakoś streamować sensownie parę monitorów? tzn streamować się pewnie da, ale czy sensownie...

edytowany 3x, ostatnio: aurel
Gynvael Coldwind
  • Rejestracja:ponad 21 lat
  • Ostatnio:16 dni
  • Lokalizacja:Zurich, Switzerland
  • Postów:457
0

@NieGooglujMnie: Używam 4rech monitorów, natomiast stream jest tylko z jednego (na pozostałych mam soft od streamowania, menedżer plików, chat i przeglądarkę z podglądem streama z danej platformy).

Co do streamowania kilku monitorów - tak, jedyną przeszkodzą jest ograniczenie rozdzielczości narzucane przez platformy (zazwyczaj do 720p, choć na YT można do 1080p; pewnie na Twitchu jak się ma konto partnerskie jest podobnie) oraz to czy widz może sensownie wyświetlić obraz z 4rech monitorów u siebie na jednym laptopowym ;)
Opcja z przełączaniem się między monitorami jest łatwiejsza ofc. Ew. kamerka na głowę i widok na środowisko "z oczu developera" ;)


peace,
gynvael.coldwind//vx "Imagination is more important than knowledge..." Albert Einstein
Gynvael Coldwind
  • Rejestracja:ponad 21 lat
  • Ostatnio:16 dni
  • Lokalizacja:Zurich, Switzerland
  • Postów:457
2

Kolejny stream dzisiaj - prawdopodobnie ostatni chwilowo w temacie xoxoxo.
Więcej info: http://gynvael.coldwind.pl/?id=590

user image


peace,
gynvael.coldwind//vx "Imagination is more important than knowledge..." Albert Einstein
Gynvael Coldwind
  • Rejestracja:ponad 21 lat
  • Ostatnio:16 dni
  • Lokalizacja:Zurich, Switzerland
  • Postów:457
1

Dzisiaj kolejny stream o 19:00 - raczej krótki, o zadankach z CTFa z Genewy (tego, w którym m.in. p4 zajęło 5te miejsce, a nasz team pierwsze).

Jak tylko stream się zacznie, pojawi się link w sekcji "Live now" na

A poza tym jest jedna ankieta związana ze streamem i jeden konkurs - jest o tym u mnie na blogu:
http://gynvael.coldwind.pl/?id=591


peace,
gynvael.coldwind//vx "Imagination is more important than knowledge..." Albert Einstein
Gynvael Coldwind
  • Rejestracja:ponad 21 lat
  • Ostatnio:16 dni
  • Lokalizacja:Zurich, Switzerland
  • Postów:457
3

Kolejny livestream: Wtorek, 29.03 19:00.
Temat? Zależy od wyników głosowania: http://gynvael.coldwind.pl/?id=593 (bardzo zachęcam do podrzucania pomysłów)


peace,
gynvael.coldwind//vx "Imagination is more important than knowledge..." Albert Einstein
NG
  • Rejestracja:prawie 10 lat
  • Ostatnio:około 7 lat
  • Postów:278
1

poszedł koment z propozycjami :)

Gynvael Coldwind
  • Rejestracja:ponad 21 lat
  • Ostatnio:16 dni
  • Lokalizacja:Zurich, Switzerland
  • Postów:457
0

Rozwiązanie jednego z problemów ze streama - tj. zagadki zmniejszającej się konsoli:
http://gynvael.coldwind.pl/?id=594

TL;DR: SetConsoleScreenBufferInfoEx przy konwersji na wew. format struktury nie ma "+1" w dwóch miejscach, które zdecydowanie powinny tam być (a przynajmniej tak wynika z mojej analizy kodu GetConsoleScreenBufferInfoEx).


peace,
gynvael.coldwind//vx "Imagination is more important than knowledge..." Albert Einstein
Gynvael Coldwind
  • Rejestracja:ponad 21 lat
  • Ostatnio:16 dni
  • Lokalizacja:Zurich, Switzerland
  • Postów:457
3

https://www.youtube.com/watch?v=SaUMQp2VWgg <-- Live, windows+linux Już nie live.
Nagranie:


peace,
gynvael.coldwind//vx "Imagination is more important than knowledge..." Albert Einstein
edytowany 2x, ostatnio: Gynvael Coldwind
Gynvael Coldwind
  • Rejestracja:ponad 21 lat
  • Ostatnio:16 dni
  • Lokalizacja:Zurich, Switzerland
  • Postów:457
1

- live, osdev #1


peace,
gynvael.coldwind//vx "Imagination is more important than knowledge..." Albert Einstein
M6
  • Rejestracja:prawie 12 lat
  • Ostatnio:około 6 lat
  • Postów:220
1

Gynvael Coldwind zrob cos praktycznego dla StarCrafta: Brood War. Jakbys byl zainteresowany, to mam pare pomyslow za co ludzie beda Ci wdzieczni (kilkaset osob by uzywalo tego kazdego dnia ;)


edytowany 1x, ostatnio: mca64
Gynvael Coldwind
Może kiedyś podczas livestream ;) W sumie lubie SC:BW. Natomiast poza livestream niestety nie za bardzo mam czas na dodatkowe projekty :(
M6
Mialem wlasnie na mysli strumien. Moze to byc cos malego, a gracze na pewno docenia. Np na koreanskich serwerach jest ze jak ktos z zespolu pinguje mini mape to jest to w kolorze gracza. Normalnie jest to w domyslnym kolorze dla wszystkich. Jak grales w sc to wiesz o co chodzi ;)
K5
  • Rejestracja:około 12 lat
  • Ostatnio:około 7 lat
  • Lokalizacja:Tutaj,obok
  • Postów:759
1

@Gynvael Coldwind - wspomniałeś na ostatnim live pod koniec gdy padło pytanie o c++14 że to dobrze iż twórcy wprowadzają smart pointery gdyż używając zwykłych wskaźników programiści popełniali błędy w aplikacjach od strony bezpieczeństwa . Mógłbyś w następnym live powiedzieć coś więcej - słyszałem o wyciekach pamięci etc ale żeby błędy bezpieczeństwa ? ;)

====

I jak smart wskaźniki poprawiają bezpieczeństwo software'u ?


Jeśli mój post jest dowodem mojej niekompetencji, to trudno, ale po to pytam, żeby się czegoś dowiedzieć.
edytowany 2x, ostatnio: kacper546
kq
Dzięki smart pointerom/kontenerom możesz sprawdzić wielkość bufora i uniemożliwić buffer overflow ;)
DR
w którymś z programistów było chyba coś o smart pointerach w kontekście bezpieczeństwa, ale głowy nie dam
Gynvael Coldwind
Mogę coś o tym wspomnieć :) Natomiast jest dokładnie tak jak @kq i @Shalom napisali. Do tego dochodzi jeszcze kilka innych rzeczy (np. use-after-free/dangling pointery/etc).
Shalom
  • Rejestracja:około 21 lat
  • Ostatnio:prawie 3 lata
  • Lokalizacja:Space: the final frontier
  • Postów:26433
3

@kacper546 smart pointery wykuczają choćby problemy z serii double free -> https://www.owasp.org/index.php/Double_Free


"Nie brookliński most, ale przemienić w jasny, nowy dzień najsmutniejszą noc - to jest dopiero coś!"
Gynvael Coldwind
  • Rejestracja:ponad 21 lat
  • Ostatnio:16 dni
  • Lokalizacja:Zurich, Switzerland
  • Postów:457
1

Kolejny livestream, nieco "bonusowy" - 19.04. Będzie o dwóch minionych CTFach - CONFidence Teaser 2016 oraz PlaidCTF, oraz zadaniach które na nich były.
Potem będzie ~2 tygodnie przerwy (będę trochę afk), a później dalej lecimy z OSDev.

P.S. na posty powyżej odpisałem w komentarzach


peace,
gynvael.coldwind//vx "Imagination is more important than knowledge..." Albert Einstein
Gynvael Coldwind
  • Rejestracja:ponad 21 lat
  • Ostatnio:16 dni
  • Lokalizacja:Zurich, Switzerland
  • Postów:457
1

Dzisiejszy livestream o CTFach - początek 19:00 (za 5 minut):

EDIT: Nagranie:


peace,
gynvael.coldwind//vx "Imagination is more important than knowledge..." Albert Einstein
edytowany 1x, ostatnio: Gynvael Coldwind
Gynvael Coldwind
  • Rejestracja:ponad 21 lat
  • Ostatnio:16 dni
  • Lokalizacja:Zurich, Switzerland
  • Postów:457
0

Errata do wczorajszego streama: http://gynvael.coldwind.pl/?lang=pl&id=604


peace,
gynvael.coldwind//vx "Imagination is more important than knowledge..." Albert Einstein
M6
  • Rejestracja:prawie 12 lat
  • Ostatnio:około 6 lat
  • Postów:220
1

po raz pierwszy ogladalem streama i fajnie sie ogladalo. Czekam na wiecej.


NG
  • Rejestracja:prawie 10 lat
  • Ostatnio:około 7 lat
  • Postów:278
1

A ja dodam, że nie oglądam na żywo, ale słucham powtórek losowo puszczanych z YT

SŁUCHam, bo dobrze się tego SŁUCHa - trochę jak radio/a.

Gynvael Coldwind
  • Rejestracja:ponad 21 lat
  • Ostatnio:16 dni
  • Lokalizacja:Zurich, Switzerland
  • Postów:457
2

Kolejny stream (OSDev #2): środa 11 maja 19:00, http://gynvael.coldwind.pl/live (YT) - do zobaczenia :)

EDIT: Video:


peace,
gynvael.coldwind//vx "Imagination is more important than knowledge..." Albert Einstein
edytowany 1x, ostatnio: Gynvael Coldwind
Gynvael Coldwind
  • Rejestracja:ponad 21 lat
  • Ostatnio:16 dni
  • Lokalizacja:Zurich, Switzerland
  • Postów:457
3

Następny stream (OSDev #3): poniedziałek 16 maja 19:00, http://gynvael.coldwind.pl/live (YT).

Eksperymentalnie zrobiłem też "wydarzenie" na FB - z tego co mi wiadomo to powinno robić za przypominajkę (chyba):
https://www.facebook.com/events/274108586258513/

Do tej pory podczas OSDev #1 i #2 udało się napisać:

  • legacy 16-bit stage 1 bootloader
  • legacy 16+32-bit sage 2 bootloader (w połowie).
    https://github.com/gynvael/stream/tree/master/009-osdev-02
    W #3 skupię się na przeskoczeniu w 64-bity oraz dołączeniu "kernela" typu hello world napisanego w C (do tej pory wszystko było w assemblerze).

Moderatorem (jak zwykle) będzie masakra (http://masakradev.pl/).

Do zobaczenia :)


peace,
gynvael.coldwind//vx "Imagination is more important than knowledge..." Albert Einstein
edytowany 1x, ostatnio: Gynvael Coldwind
Gynvael Coldwind
  • Rejestracja:ponad 21 lat
  • Ostatnio:16 dni
  • Lokalizacja:Zurich, Switzerland
  • Postów:457
1

Kolejny stream (OSDev #4): piątek 3 czerwca 19:00, http://gynvael.coldwind.pl/live
Wrzuciłem też event na FB jeśli ktoś z tego korzysta: https://www.facebook.com/events/1086559188082297/

Dodam, że rozwiązaniem zagadki z OSDev #3 (zagadki pt. "czemu mi strony 1GB nie działają!!!1oneoneoneeleven") okazały się być źle ustawione opcje bochsrc (cpuid i model) - kudos krycha i lukasz1235 za posprawdzanie. Przy okazji reenz0n zaimplementował to samo ze stronami 2MB i 4KB (vide post gościnny u mnie na blogu - http://gynvael.coldwind.pl/?id=607).

W między czasie wrzuciłem też jakieś video na YT z losowymi rzeczami -

Do zobaczenia w piątek ;)


peace,
gynvael.coldwind//vx "Imagination is more important than knowledge..." Albert Einstein
Gynvael Coldwind
  • Rejestracja:ponad 21 lat
  • Ostatnio:16 dni
  • Lokalizacja:Zurich, Switzerland
  • Postów:457
2

Dziś wieczorem o 19:00 kolejny stream - tym razem powtórka z mojej prelekcji z KrakWhiteHat pt. „Wstęp do RE”.
Gdzie: http://gynvael.coldwind.pl/live
Przypominajka na FB: https://www.facebook.com/events/567949163366090/

Do zobaczenia :)


peace,
gynvael.coldwind//vx "Imagination is more important than knowledge..." Albert Einstein
edytowany 2x, ostatnio: Gynvael Coldwind
Gynvael Coldwind
  • Rejestracja:ponad 21 lat
  • Ostatnio:16 dni
  • Lokalizacja:Zurich, Switzerland
  • Postów:457
1

Kolejny stream w piątek o 19:00 - OSDev #5 i próba uruchomienia tego co do tej pory napisałem na prawdziwym komputerze.
Gdzie: http://gynvael.coldwind.pl/live
Przypominajka na FB: https://www.facebook.com/events/1626035801043930/

Na streamie również ogłoszenie zwycięzcy konkursu z poprzedniego OSDev #4.


peace,
gynvael.coldwind//vx "Imagination is more important than knowledge..." Albert Einstein
Kliknij, aby dodać treść...

Pomoc 1.18.8

Typografia

Edytor obsługuje składnie Markdown, w której pojedynczy akcent *kursywa* oraz _kursywa_ to pochylenie. Z kolei podwójny akcent **pogrubienie** oraz __pogrubienie__ to pogrubienie. Dodanie znaczników ~~strike~~ to przekreślenie.

Możesz dodać formatowanie komendami , , oraz .

Ponieważ dekoracja podkreślenia jest przeznaczona na linki, markdown nie zawiera specjalnej składni dla podkreślenia. Dlatego by dodać podkreślenie, użyj <u>underline</u>.

Komendy formatujące reagują na skróty klawiszowe: Ctrl+B, Ctrl+I, Ctrl+U oraz Ctrl+S.

Linki

By dodać link w edytorze użyj komendy lub użyj składni [title](link). URL umieszczony w linku lub nawet URL umieszczony bezpośrednio w tekście będzie aktywny i klikalny.

Jeżeli chcesz, możesz samodzielnie dodać link: <a href="link">title</a>.

Wewnętrzne odnośniki

Możesz umieścić odnośnik do wewnętrznej podstrony, używając następującej składni: [[Delphi/Kompendium]] lub [[Delphi/Kompendium|kliknij, aby przejść do kompendium]]. Odnośniki mogą prowadzić do Forum 4programmers.net lub np. do Kompendium.

Wspomnienia użytkowników

By wspomnieć użytkownika forum, wpisz w formularzu znak @. Zobaczysz okienko samouzupełniające nazwy użytkowników. Samouzupełnienie dobierze odpowiedni format wspomnienia, zależnie od tego czy w nazwie użytkownika znajduje się spacja.

Znaczniki HTML

Dozwolone jest używanie niektórych znaczników HTML: <a>, <b>, <i>, <kbd>, <del>, <strong>, <dfn>, <pre>, <blockquote>, <hr/>, <sub>, <sup> oraz <img/>.

Skróty klawiszowe

Dodaj kombinację klawiszy komendą notacji klawiszy lub skrótem klawiszowym Alt+K.

Reprezentuj kombinacje klawiszowe używając taga <kbd>. Oddziel od siebie klawisze znakiem plus, np <kbd>Alt+Tab</kbd>.

Indeks górny oraz dolny

Przykład: wpisując H<sub>2</sub>O i m<sup>2</sup> otrzymasz: H2O i m2.

Składnia Tex

By precyzyjnie wyrazić działanie matematyczne, użyj składni Tex.

<tex>arcctg(x) = argtan(\frac{1}{x}) = arcsin(\frac{1}{\sqrt{1+x^2}})</tex>

Kod źródłowy

Krótkie fragmenty kodu

Wszelkie jednolinijkowe instrukcje języka programowania powinny być zawarte pomiędzy obróconymi apostrofami: `kod instrukcji` lub ``console.log(`string`);``.

Kod wielolinijkowy

Dodaj fragment kodu komendą . Fragmenty kodu zajmujące całą lub więcej linijek powinny być umieszczone w wielolinijkowym fragmencie kodu. Znaczniki ``` lub ~~~ umożliwiają kolorowanie różnych języków programowania. Możemy nadać nazwę języka programowania używając auto-uzupełnienia, kod został pokolorowany używając konkretnych ustawień kolorowania składni:

```javascript
document.write('Hello World');
```

Możesz zaznaczyć również już wklejony kod w edytorze, i użyć komendy  by zamienić go w kod. Użyj kombinacji Ctrl+`, by dodać fragment kodu bez oznaczników języka.

Tabelki

Dodaj przykładową tabelkę używając komendy . Przykładowa tabelka składa się z dwóch kolumn, nagłówka i jednego wiersza.

Wygeneruj tabelkę na podstawie szablonu. Oddziel komórki separatorem ; lub |, a następnie zaznacz szablonu.

nazwisko;dziedzina;odkrycie
Pitagoras;mathematics;Pythagorean Theorem
Albert Einstein;physics;General Relativity
Marie Curie, Pierre Curie;chemistry;Radium, Polonium

Użyj komendy by zamienić zaznaczony szablon na tabelkę Markdown.

Lista uporządkowana i nieuporządkowana

Możliwe jest tworzenie listy numerowanych oraz wypunktowanych. Wystarczy, że pierwszym znakiem linii będzie * lub - dla listy nieuporządkowanej oraz 1. dla listy uporządkowanej.

Użyj komendy by dodać listę uporządkowaną.

1. Lista numerowana
2. Lista numerowana

Użyj komendy by dodać listę nieuporządkowaną.

* Lista wypunktowana
* Lista wypunktowana
** Lista wypunktowana (drugi poziom)

Składnia Markdown

Edytor obsługuje składnię Markdown, która składa się ze znaków specjalnych. Dostępne komendy, jak formatowanie , dodanie tabelki lub fragmentu kodu są w pewnym sensie świadome otaczającej jej składni, i postarają się unikać uszkodzenia jej.

Dla przykładu, używając tylko dostępnych komend, nie możemy dodać formatowania pogrubienia do kodu wielolinijkowego, albo dodać listy do tabelki - mogłoby to doprowadzić do uszkodzenia składni.

W pewnych odosobnionych przypadkach brak nowej linii przed elementami markdown również mógłby uszkodzić składnie, dlatego edytor dodaje brakujące nowe linie. Dla przykładu, dodanie formatowania pochylenia zaraz po tabelce, mogłoby zostać błędne zinterpretowane, więc edytor doda oddzielającą nową linię pomiędzy tabelką, a pochyleniem.

Skróty klawiszowe

Skróty formatujące, kiedy w edytorze znajduje się pojedynczy kursor, wstawiają sformatowany tekst przykładowy. Jeśli w edytorze znajduje się zaznaczenie (słowo, linijka, paragraf), wtedy zaznaczenie zostaje sformatowane.

  • Ctrl+B - dodaj pogrubienie lub pogrub zaznaczenie
  • Ctrl+I - dodaj pochylenie lub pochyl zaznaczenie
  • Ctrl+U - dodaj podkreślenie lub podkreśl zaznaczenie
  • Ctrl+S - dodaj przekreślenie lub przekreśl zaznaczenie

Notacja Klawiszy

  • Alt+K - dodaj notację klawiszy

Fragment kodu bez oznacznika

  • Alt+C - dodaj pusty fragment kodu

Skróty operujące na kodzie i linijkach:

  • Alt+L - zaznaczenie całej linii
  • Alt+, Alt+ - przeniesienie linijki w której znajduje się kursor w górę/dół.
  • Tab/⌘+] - dodaj wcięcie (wcięcie w prawo)
  • Shit+Tab/⌘+[ - usunięcie wcięcia (wycięcie w lewo)

Dodawanie postów:

  • Ctrl+Enter - dodaj post
  • ⌘+Enter - dodaj post (MacOS)