Projekt z JAVY na miarę inżynierki.

Projekt z JAVY na miarę inżynierki.
SU
  • Rejestracja:prawie 6 lat
  • Ostatnio:około 3 lata
  • Postów:17
0

Cześć! Od roku pracuję jako c++ dev, w lutym 2021 będę bronił tytuł inżyniera. Po obronie chciałbym zacząć pracę jako JAVA dev (pewnie zmienię projekt lub firmę). Na chwilę obecną posiadam całkiem solidne podstawy Javy, bo oprócz wiedzy ze studiów zdarzyło mi się coś domergowawć do repozytoriów Javowych w naszym produkcie, a więc kod komercyjny w Javie też nie jest mi obcy.

Przez najbliższe kilka miesięcy chciałbym zająć się pisaniem pracy inżynierskiej, natomiast mój problem tkwi w doborze technologii i tematu. Mianowicie, chciałbym napisać coś fajnego, dużego i ambitnego, a przede wszystkim takiego abym mógł relatywnie gładko wejść w nowy projekt Javowy bez problemów.

Oprócz Javy samej w sobie sądzę, że must-have w tym projekcie będzie Spring. Zastanawiałem się nad jakąś apką, gdzie też pojawi się JavaScript i do tego opakować to w React. A może Angular? Vue? Doradźcie mi proszę, co teraz jest gorące na rynku i czego warto się teraz nauczyć. Będę też wdzięczny jeżeli nakierujecie mnie na jakiś temat, w którym możnaby zrealizować taki stack technologiczny np. Java + Spring + JS + React. We własnym zakresie oczywiście wdrożę też jakieś narzędzia DevOpsowe.

@admin
Zadaję te pytanie tutaj, a nie w dziale edukacja, gdyż sądzę, że tu częściej zaglądają spece od Javy, jeśli się pomyliłem to proszę przenieś. Dzięki.

edytowany 1x, ostatnio: sucioguapo
AK
  • Rejestracja:ponad 6 lat
  • Ostatnio:25 dni
  • Postów:3561
2

Jak chcesz fajnie, ambitnie to słowo Spring jest tu w sprzeczności.
Taką prozę to będziesz miał w pracy, ja popieram, że chcesz wyjść ponad pańszczyznę.

Może serwery nie-servletowe? Jakiś Ratpack, te klimaty?


Bo C to najlepszy język, każdy uczeń ci to powie
Charles_Ray
OP chce wejść do świat Javy i dostać w niej pierwsza prace, wiec nie rekomendowałbym teraz wchodzenia w tego typu technologie :) Spring IMO jest ok
SU
  • Rejestracja:prawie 6 lat
  • Ostatnio:około 3 lata
  • Postów:17
0

Nie wiele mi to mówi, z twojego postu wnioskuję, że nie powinienem uczyć się Springa tylko iść w zagadnienia serwerowe. A co z innymi technologiami, które wymieniłem w pierwszym poście? @AnyKtokolwiek rozwiń proszę :)

Charles_Ray
Kolega miał na myśli, że w Springu robi się aplikacje servletowe, co zreszta nie jest już 100% prawda,ponieważ WebFlux może działać na Nettym. Ratpack czy vertx korzystają pod spodem właśnie z Nettiego
SU
Dzięki za wyjaśnienie, poczytam o tym, brzmi ciekawie.
Charles_Ray
  • Rejestracja:około 17 lat
  • Ostatnio:około 7 godzin
  • Postów:1875
2

Dobierasz temat do technologii czy technologie do tematu? :)


”Engineering is easy. People are hard.” Bill Coughran
SU
  • Rejestracja:prawie 6 lat
  • Ostatnio:około 3 lata
  • Postów:17
0

@Charles_Ray: Sęk w tym, że nie mam jeszcze ani tematu ani dokładnie sprecyzowanych technologii. Najpierw chciałbym wybrać ciekawy i sensowny stack technologiczny, a następnie temat.

edytowany 1x, ostatnio: sucioguapo
AK
  • Rejestracja:ponad 6 lat
  • Ostatnio:25 dni
  • Postów:3561
1
sucioguapo napisał(a):

Nie wiele mi to mówi, z twojego postu wnioskuję, że nie powinienem uczyć się Springa tylko iść w zagadnienia serwerowe. A co z innymi technologiami, które wymieniłem w pierwszym poście? @AnyKtokolwiek rozwiń proszę :)

Jak architekt rysował mi dom, pozwoliłem mu użyć jego talentów i miał dużo do powiedzenia (dom wyszedł z tych prostych, ale nie starzejących się).
Zapytałem o inne projekty, jak klient każe tu zrobić wielkie okno, tu "gotycką" wieżyczkę, tu fizdrygiełko itd... Odpowiedział: Rzygam i rysuję

Springa pewnie będziesz musiał, taka jest średnia branży, ale czy szukać w tym przyjemności???


Bo C to najlepszy język, każdy uczeń ci to powie
edytowany 1x, ostatnio: AnyKtokolwiek
SU
  • Rejestracja:prawie 6 lat
  • Ostatnio:około 3 lata
  • Postów:17
0

@AnyKtokolwiek: Chciałbym wejść dobrze w pozycję Java dev z C++ dev, jeżeli trzeba będzie nauczyć się czegoś co jest nieprzyjemne, ale konieczne, to trudno, spłacę ten dług technologiczny :D Natomiast to dalej mnie nie przybliża do meritum sprawy.

KamilAdam
  • Rejestracja:ponad 6 lat
  • Ostatnio:21 dni
  • Lokalizacja:Silesia/Marki
  • Postów:5505
1

Spring nie jest technologią dedykowaną do jakiegoś konkretnego tematu tylko technologią ogólną. Każdą aplikację którą można zrobić w Javie, można zrobić z użyciem Springa i bez użycia Springa.


Mama called me disappointment, Papa called me fat
Każdego eksperta można zastąpić backendowcem który ma się douczyć po godzinach. Tak zostałem ekspertem AI, Neo4j i Nest.js . Przez mianowanie
Charles_Ray
  • Rejestracja:około 17 lat
  • Ostatnio:około 7 godzin
  • Postów:1875
0

Mogę Ci pomoc ewentualnie wybrać temat, który bardziej pasuje do Javy ze Springiem (rozumiem, że najważniejszy jest aspekt nauki technologii, a nie odkrywanie nowej galaktyki), natomiast to Ty powinieneś wykonać proces myślowy i coś zaproponować. W przeciwnym przypadki to trochę jak pytanie „co mam w życiu robić?”


”Engineering is easy. People are hard.” Bill Coughran
SU
  • Rejestracja:prawie 6 lat
  • Ostatnio:około 3 lata
  • Postów:17
0

@Charles_Ray: Wstępnie myślałem o czymś takim, żeby zrobić serwis webowy do rozpoznawania ludzi, coś w stylu takiej aplikacji inwigilacyjnej. Nie chodzi o samo rozpoznawanie twarzy, ale też detekcja kształtów, np jeśli nie da się rozpoznać osobnika po twarzy to weryfikacja, że jest to na przykład mężczyzna w wieku 30-35 lat i aktualnie w bazie znajduje się takich x osób do których ten opis pasuje, chociaż twarz nie zgadza się. Może sama apka nie brzmi super, ale można tutaj wykazać się nie tylko samą Javą ale także bazami danych (być może nawet mikroserwisami jeśli bazę gdzieś w chmurze postawić albo skorzystać z jakiegoś api do face recgonition). Poza tym możnaby też tu pobawić się troszkę w webówkę, a może nawet bardziej taki full-stack jeśli dołożyć do tego jakiś JS framework. Brzmi rozsądnie?

Charles_Ray
  • Rejestracja:około 17 lat
  • Ostatnio:około 7 godzin
  • Postów:1875
1

Jeśli dobrze rozumiem co chcesz zrobić, to cześć Javowa będzie przelotką do modelu ML i bazy. Brzmi spoko, tylko: skąd weźmiesz zdjęcie twarzy i co najważniejsze - jak wytrenujesz i zdeplojujesz model?


”Engineering is easy. People are hard.” Bill Coughran
SU
  • Rejestracja:prawie 6 lat
  • Ostatnio:około 3 lata
  • Postów:17
0

@Charles_Ray: Do bazy wgrałbym z 10 - 15 zdjęć na których są ludzie, można takie zdjęcia użyć z internetu pod warunkiem odpowiedniej licencji. Wytrenowanie i deployowanie modelu to największy problem, najpewniej część bym zaimplementował, a w części bym skorzystał z jakiegoś gotowego chmurowego serwisu. Tak jak wcześniej wspominałem bardziej chciałbym poznać nowe technologie i lepiej się obyć z Javą niż komplikować to implementacyjnie, więc jeśli tylko to co sobie wymyśliłem na sens to pochylę się nad tym bardziej.

Charles_Ray
  • Rejestracja:około 17 lat
  • Ostatnio:około 7 godzin
  • Postów:1875
0

Dla mnie to jest projekt stricte ML-owy z dodatkiem małej aplikacji Javowej, która obsługuje żądania użytkowników i jest klientem tego modelu. Brzmi fajnie, natomiast 90% czasu zajęłoby mi ogarnięcie tego modelu, chociaż może są jakieś gotowce/tutoriale oparte o TensorFlow (nie znam się). Może zastanów się jak wyeliminować te cześć ML-ową pozostając w tematyce. Masz bazę zdjęć, co dalej?


”Engineering is easy. People are hard.” Bill Coughran
edytowany 1x, ostatnio: Charles_Ray
SU
  • Rejestracja:prawie 6 lat
  • Ostatnio:około 3 lata
  • Postów:17
0

@Charles_Ray: w następnych krokach pewnie myślałbym o rozbudowaniu części Javowej, może jakiś serwer postawić, rejestrację użytkowników serwisu, zlecenie takich skanów, czyli jakiś system rezerwacji ... W zasadzie sky is the limit jak tak dłuższą chwilę się nad tym zastanawiam.

Charles_Ray
  • Rejestracja:około 17 lat
  • Ostatnio:około 7 godzin
  • Postów:1875
0

To może jakaś aplikacja z możliwością logowania się takim „Face ID”? Sam proces logowania mógłby być tematem pracy


”Engineering is easy. People are hard.” Bill Coughran
edytowany 1x, ostatnio: Charles_Ray
KE
  • Rejestracja:prawie 8 lat
  • Ostatnio:ponad 2 lata
  • Postów:32
0

To tak naprawdę powstaje CRUD jak każdy inny: zarejestruj, zaloguj, złóż zlecenie

Charles_Ray napisał(a):

To może jakaś aplikacja z możliwością logowania się takim „Face ID”? Sam proces logowania mógłby być tematem pracy

to brzmi fajnie!

edytowany 1x, ostatnio: kek
SU
  • Rejestracja:prawie 6 lat
  • Ostatnio:około 3 lata
  • Postów:17
0

@Charles_Ray: Samo logowawnie Face ID brzmi bardzo fajnie! Tylko pytanie co po tym jak już się twarzą zalogujemy, jakiś serwis też pod spodem bym chciał mieć, ale to nie problem, tutaj pomysłów może być milion. Okej to mam już jakiś zarys, w którą stronę iść. A jak do takiego właśnie projektu dobrać stack technologiczny aby był ciekawy? :)

Charles_Ray
  • Rejestracja:około 17 lat
  • Ostatnio:około 7 godzin
  • Postów:1875
0

Co to znaczy ciekawy? Jeśli chcesz poznać „średnią rynkową”, to ciśniesz Spring/JPA w tej apce. Bardziej ambitnie to już na każdej warstwie praktycznie możesz eksperymentować - od bazy danych (np. NoSQL jakiś), przez kod (vavry, RxJavy, webfluksy, ratpacki, micronauty) po frontend (Vue, Reacty, Angulary) - onanizm techniczny na całego. Jak zrobisz moduł do uwierzytelniania, to chronionym zasobem może być cokolwiek, np. dane konta - to nie jest clue problemu.


”Engineering is easy. People are hard.” Bill Coughran
edytowany 2x, ostatnio: Charles_Ray
superdurszlak
  • Rejestracja:prawie 7 lat
  • Ostatnio:2 dni
  • Lokalizacja:Kraków
  • Postów:2000
1

Po roku pracy komercyjnej powinieneś już wiedzieć (co najmniej z opowieści kolegów z pracy) że wybieranie najpierw rozwiązań a dopiero potem problemów to proszenie się o większe problemy i powody do frustracji, których dałoby się uniknąć ;)

Jak chcesz zrobić ambitną inżynierkę, to nie ładuj się w pisanie wielkiego (bo jak ambitne, to musi być duże) enterprise projektu w enterprise frameworkach w enterprise językach:

w następnych krokach pewnie myślałbym o rozbudowaniu części Javowej, może jakiś serwer postawić, rejestrację użytkowników serwisu, zlecenie takich skanów, czyli jakiś system rezerwacji ... W zasadzie sky is the limit jak tak dłuższą chwilę się nad tym zastanawiam.

Nie warto się bawić w sky is the limit, serio. Będziesz dokładał sobie tony takiej małpiej roboty - bo muszę dołożyć entitkę, a do niej repository, a do tego serwis... i tak dalej z tą cebulą / lasagne, a efekt końcowy będzie taki, że całe mięcho jakie miało być w tej pracy zagubi się w wielkiej górze Springowych kartofli. Przepraszam - beanów. Albo nie Springowych, tylko jakichś innych. Obojętnie.

Zrób tyle, żeby aplikacja pozwalała w miarę przystępnie dobrać się do mięcha pracy i żeby to mięcho było wyeksponowane, przykuwało uwagę i wołało "zjedz mnie!" - i zrób to po prostu jak należy ;)


CO
  • Rejestracja:prawie 5 lat
  • Ostatnio:około 4 godziny
  • Postów:610
4

Moim zdaniem popełniasz błąd już w miejscu, w którym stwierdzasz, że twoja praca inżynierska ma być ambitna, obszerna w dodatku napisana w technologiach enterprise, których nie znasz. Coś takiego ci w życiu nie wypali. Polecam ci odróżnić te dwie rzeczy - pisanie pracy inżynierskiej oraz zmiana pracy. Do inżynierki możesz podejść na dwa sposoby - chcesz mieć fajną i pewną inżynierkę - wybierz technologię, którą znasz. Po prostu jak pracowałeś w tym c++ to możesz napisać ambitną inżynierkę w c++. Język to tylko narzędzie.

Druga opcja to jest ryzyko czyli pójście w nieznaną ci (dotąd) technologię + ambitny temat. Nie łudź się, że masz dużo czasu. Każdy kto wybierał tą opcję pluł sobie potem w brodę. Termin zacznie się zbliżać, pojawią się nieoczekiwane błędy, coś nie działa do końca, temat ambitny i nie ma za bardzo kto pomóc, w dodatku technologia niszowa. Prosta metoda na stworzenie klapy.
Po prostu ambitna inżynierka w nieznanej technologii - to nie jest droga dla każdego. Zależy wszystko od tego jaki masz charakter. Jeżeli masz problemy z organizacją, prokrastynacją itd to może być ciężko. I dolicz sobie bardzo istotny aspekt - jeżeli teraz pracujesz na etacie spędzasz 8 godzin przed komputerem praktycznie codziennie. W weekendy pewnie masz uczelnie? Pisanie pracy inżynierskiej to raczej kilka miesięcy, a nie jeden weekend. Po 8 godzinach z jednego kodu do drugiego - przez kilka dni, tygodni będzie ci łatwo, ale w końcu zacznie cię to frustrować. Siedzenie przy kompie po 12-14 godzin to prosta sprawa, pod warunkiem, że nie robisz tego codziennie i wszystko ci wychodzi. Ale jak będziesz się czegoś uczył pierwszy raz i codziennie 4-6 godzin po pracy wkuwania i jeszcze coś ci nie wychodzi - mózg ma swoje limity. Może skończyć się tak, że w rezultacie inżynierkę zrobisz na odpie***l bo nie wytrzymasz psychicznie presji. Do tego zaliczaj inne przedmioty ze studiów, nie każdy profesorek poluzuje ci na ostatnim semestrze, niektórzy dalej będą robić wymagające kolokwia, nie obchodzi ich twoja inżynierka :)

Moim zdaniem najgorsze co możesz zrobić to pisać inżynierkę pod pracodawcę jak CV. Przecież nawet jak zrobisz ciekawą pracę inżynierską w pythonie z machine learningiem, a zaaplikujesz na stanowisko Javy to nic się nie stanie. Będziesz mógł się pochwalić tą inżynierką i potem na rozmowie to sensownie uargumentować, że chcesz pracować w Javie, bo widzisz się w Javie, a inżynierkę napisałeś w pythonie, bo jarał cię temat i zawsze chciałeś coś takiego zrobić, do niego dobrałeś technologię. Takim podejściem zyskasz uznanie w oczach pracodawcy. Bo pamiętaj, że w pracy programisty nie chodzi o pisanie kodu, tylko o rozwiązywanie problemów. Jak można użyć automatycznej koparki to nie ma sensu brać łopatę, taczkę i ręcznie kopać. Nie musisz konkretnie brać nudne i komercyjne frameworki do inżynierki, żeby jednocześnie zaimponować pracodawcy. Najważniejsze, żeby temat pracy cię jarał, a wybór narzędzia to inna sprawa.

SU
  • Rejestracja:prawie 6 lat
  • Ostatnio:około 3 lata
  • Postów:17
0

@CoderOne: Wow, dzięki za bardzo rzeczową odpowiedź :)
To o czym wspominasz to jest drugie podejście, które gdzieś tam z tyłu głowy się ze mną kłóci, mianowicie jestem świadom tego, że mam już taką wiedzę, że bez problemu stworzę coś ciekawego w technologiach już mi znanych. Być może masz i rację, że powinienem oddzielić pracę inżynierską od zmiany pracy/technologii. Boję się tylko, że nie starczy mi czasu jednocześnie na pracę na etacie 8h (pod warunkiem, że jenkins zielony :D), studia dzienne, pisanie pracy inżynierskiej oraz samodzielną naukę nowych technologii - po prostu zastanawiam się czy da się upiec dwie pieczenie na jednym ogniu. Inna sprawa, że możesz mieć rację - nie koniecznie jest to dobry pomysł. Wiadomo, że język to tylko narzędzie, jak mi ktoś kiedyś powiedział "najmniej istotna część programowania to pisanie kodu" :D Natomiast mam obawy, że bez solidnego portfolio HR-ka wyrzuci CV, różnie z tym bywa. Na chwilę obecną spróbuję się pobawić w kontrybucje do jakiś Javowych projektów open-source :)

@superdurszlak
Trochę mnie sprowadziłeś na ziemie, ale trudno się z tobą nie zgodzić :)

@Charles_Ray
Widzę, że są różne opinie na temat Springa, zacznę się silniej kształcić w tym zakresie bo chciałbym wiedzieć jak to faktycznie jest

danek
  • Rejestracja:ponad 10 lat
  • Ostatnio:7 miesięcy
  • Lokalizacja:Poznań
  • Postów:797
1

Pamiętaj też, że inżynierka to praca pisana i musisz tak wybrać temat żeby mieć o czym pisać te 50-80 stron ;)

Also, kod inżynierki chyba nawet nie podlega ocenie (dodaje się go tylko jako załącznik, ale nikt go nie sprawdza)


Spring? Ja tam wole mieć kontrole nad kodem ᕙ(ꔢ)ᕗ
Haste - mała biblioteka do testów z czasem.
SU
Paaanie jakie 50-80 stron? Ostatnio trafiło w moje ręce kilka inżynierek z półki AGH i nie miały więcej niż 30 stron. Fun fact: były to właśnie inżynierki informatyków.
danek
u nas na PP jakoś po tyle miały, Ale to zależy od promotora
SU
@danek: Jasna sprawa! Ale faktycznie masz rację, ile by to stron nie było to jednak trzeba o czymś się rozpisać.
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)