Skróty klawiszowe przyspieszają pracę - banał, ale zobacz →
odrywasz rękę od klawiatury. Klikasz myszką i wracasz na klawiaturę.
Te same keymap, są wielu programach, nawet pisząc to sprawdzam
ctrl + ←
przeskakuje o całe słowo
ctrl + shift + ←
zaznacza mi całe słowo
szybciej niż po literce, prawda?
Testuje teraz phpstorm i zobaczmy co tam mają użytecznego...
alt + ctrl + s
otwiera setings z podlądem kaymap
ctrl + w
Zwiększa zaznaczoną sekcje - super
ctrl + shift + w
odwrotność zmniejsza zaznaczoną sekcje
alt + spacja
pokazuje auto dopowiadanie
shift, shift
otwiera mi shearch Everywhere - wyszukiwanie w projekcie (pliki, zmienne, moduly)
Bardzo ciekawi mnie opcja Refactior
alt + ctrl + shift + t
ale to później sprawdzę, zapiszę by sprawdzić
ctrl+j
pozwala pracować z templatkami kodu - nie pisać całego, ale wstawić i wypełnić pola
alt + insert
generuje plik w projekcie
Dziecko wstało więc koniec na dziś.
Mam nadzieję że o takich skrótach jak:
ctrl + c , ctrl + v, ctrl + x, ctrl + z,
ctrl + a, ctrl +f, ctrl +b
wspominać nie trzeba.
ctrl + s
to chyba programiści mają jako tik nerwowy
Pozdrawiam
Helo, jestem Łukasz i razem z żoną prowadzimy Piernikarnie Cafe w Piszu na mazurach. Ten Blog to moje miejsce do zapisywania tego co warto jest zapamiętać. Być może przyda Ci się coś co postanowiłem zachować dla potomności :-)
środa, 29 maja 2019
poniedziałek, 27 maja 2019
Raport z Ćwiczeń nad gitem
Dziś ćwiczyłem pracę z Gitem.
Narzędzie:
- używam TortoiseGit
Zadanie.
1)
- Stworzyć repozytorium : https://bitbucket.org/born-kes/composer/src/master/
- Stworzyć instalator Composera w batch,
- plik bat, który pobiera pliki Composera i zapisuje w projekcie (tworzymy środowisko pracy).
- Sprawdzić czy pamiętam jak konfiguruje się composser'a
2)
- Stworzyć kilka wątków/kanałów (Branch) na repozytorium Git'a
- Wprowadzić zmiany, w każdym z wątków inne.
- Połączyć (Marge...) wątki (Branche)
Raport, jakie kroki podjołem:
- stworzyłem repozytorim
- sklonowałem na dysk
- stworzyłem wątki
- przełając się między nimi potworzyłem różne konflikty między wersjami (wątkami)
3) Rozwiązuje problem?
1) ustawiam wątek ( Switch/Checkout... )
np.master
2) zaktualizować wątek (Pull...)
- są dwa wątki master (localny i serwera repozytorium)
3) dołączyć (Marge..) do niego poprawki (commit'y) z innego wątku (Branch)
4) Edytować poprawkę jeśli dotyczy jednego pliku...
5) Wysłać (Push...) na serwer
- bez dołączania już nowych plików z tego co widzę, nie mamy tu wyboru.
6) Hura udało się?
Narzędzie:
- używam TortoiseGit
Zadanie.
1)
- Stworzyć repozytorium : https://bitbucket.org/born-kes/composer/src/master/
- Stworzyć instalator Composera w batch,
- plik bat, który pobiera pliki Composera i zapisuje w projekcie (tworzymy środowisko pracy).
- Sprawdzić czy pamiętam jak konfiguruje się composser'a
2)
- Stworzyć kilka wątków/kanałów (Branch) na repozytorium Git'a
- Wprowadzić zmiany, w każdym z wątków inne.
- Połączyć (Marge...) wątki (Branche)
Raport, jakie kroki podjołem:
- stworzyłem repozytorim
- sklonowałem na dysk
- stworzyłem wątki
- przełając się między nimi potworzyłem różne konflikty między wersjami (wątkami)
3) Rozwiązuje problem?
1) ustawiam wątek ( Switch/Checkout... )
np.master
2) zaktualizować wątek (Pull...)
- są dwa wątki master (localny i serwera repozytorium)
3) dołączyć (Marge..) do niego poprawki (commit'y) z innego wątku (Branch)
4) Edytować poprawkę jeśli dotyczy jednego pliku...
5) Wysłać (Push...) na serwer
- bez dołączania już nowych plików z tego co widzę, nie mamy tu wyboru.
6) Hura udało się?
środa, 22 maja 2019
Kupno działki, opieka nad dziećmi i kilka książek i tygodni później, od rozpoczęcia porządkowania wiedzy.
Książki o :
-wzorcach projektowych,
- testowaniu danych,
- Twórcy ofiary i
i efektem jest Class'a testowa,
Ogarnę gita i dodam link do repozytorium.
Książki o :
-wzorcach projektowych,
- testowaniu danych,
- Twórcy ofiary i
i efektem jest Class'a testowa,
Ogarnę gita i dodam link do repozytorium.
/**
* Class ExampleTest
* $this->assertTrue
* $this->assertFalse
* $this->assertEquals ==
* $this->assertSame ===
* $this->assertContains('value', $array) ['value']
* $this->assertArrayHasKey('key', $array) ['key'=>'value']
* $this->assertInternalType('array', $a); type_of2
$date = new DateTime();
$this->assertInstanceOf('DateTime', $date);
*/
<?php
use PHPUnit\Framework\TestCase;
class EtestTest extends TestCase
{
/** @var \Prophecy\Prophecy\ObjectProphecy */
private $prophet;
private $mock;
private $Basic;
private $x;
protected function setup() {
$this->prophet = new \Prophecy\Prophet;
/** @var Prophecy\Prophet $x TYPE_NAME */
$x = $this->x = $this->prophet->prophesize()->willImplement ('Basic\Routing');
$x->get('b')->willReturn('hello b');
$x->get('a')->willReturn('hello');
$this->mock = $x->reveal();
$this->Basic = new \Basic\Basic($this->mock);
}
protected function tearDown() {
$this->prophet->checkPredictions();
}
public function testBasicRun()
{
//$this->x->get('b')->willReturn('hello nowe');
$this->assertEquals($this->Basic->run(), 'hello b') ;
return true;
}
/**
* jeśli test poprzedni działa
* @depends testBasicRun
*/
public function testNext($a)
{
$this->assertTrue($a);
}
/**
* Dane z Provider'a
* @dataProvider additionProviderOne
* @dataProvider additionProviderSecond
*/
public function testAdd($a, $b, $expected)
{
$this->assertSame($expected, $a + $b, "{$a}, {$b}, {$expected}");
}
/**
* Dane z Provider'a
* @dataProvider additionProviderOne
* @dataProvider additionProviderSecond
*/
public function testAddSecond()
{
list( $a, $b, $expected) = func_get_args();
$this->assertSame($expected, $a + $b, "{$a}, {$b}, {$expected}");
}
public function additionProviderOne()
{
return [
[0, 0, 0],
[0, 1, 1],
[1, 0, 1],
// [1, 1, 3]
];
}
public function additionProviderSecond()
{
return [
'adding zeros' => [0, 0, 0],
'zero plus one' => [0, 1, 1],
'one plus zero' => [1, 0, 1],
// 'one plus one' => [1, 1, 3]
];
}
public function testFailingInclude()
{
$this->expectException(Error::class);
throw @include 'not_existing_file.php';
}
public function testExpectFooActualFoo()
{
$this->expectOutputString('foo');
echo 'foo';
}
}
// cls => czeuszczenie cmd
Notatka: instalacja narzędzi dla programistów
-------------------------------------------
Grunt / Glup (alternatywa)
- wykonuje listę tasków (zadań) napisanych w js.
minifikuje kod, łączy pliki, podmienia tagi na tekst, śledzi zmiany w plikach, powtarza testy.
-------------------------
front-end
https://bower.io/
śledzi pakiety które chcesz mieć w projekcie i ściąga potrzebną wersje, albo aktualizuje.
-------------------------
http://yeoman.io/
- Tworzy i rozbudowuje szkielet aplikacji - korzysta z gotowych generatorów
(aplikacje/strony mobilne, rozszerzenia firefox'a/chroma, wordpress itp),
tworzy też procedury dla Grunt'a/Glup'a i zestawy testów jednostkowych.
-------------------------
Instalacja w cmd:
Czy masz zainstalowanego nodejs ?
nie:
- pobierz z https://nodejs.org
tak:
sprawdzamy wersje nodejs & npm
npm --version
Czy masz plik package.json
Nie:
{
- generate file package.json
npm init
- zainstaluj grunt globalnie
npm install -g grunt-cli
- zainstaluj grunt'a i modułów w projekcie
npm install grunt --save-dev grunt-contrib-connect grunt-contrib-watch --save-dev
- instal karma :supports test-driven development i moduły
npm install karma grunt-karma karma-jasmine jasmine-core karma-browser-reporter karma-story-reporter --save-dev
- instal launcher for browsers to test for karma
npm install karma-chrome-launcher karma-cli karma-firefox-launcher karma-ie-launcher karma-phantomjs-launcher karma-script-launcher --save-dev
}
Tak:
npm install
- Tworzymy pliki config
* gruntfile.js
* karma.config.js
zapomniałem o Composer jest dla php
https://getcomposer.org/
Tu za instalacje odpowiada w CMD
Grunt / Glup (alternatywa)
- wykonuje listę tasków (zadań) napisanych w js.
minifikuje kod, łączy pliki, podmienia tagi na tekst, śledzi zmiany w plikach, powtarza testy.
-------------------------
front-end
https://bower.io/
śledzi pakiety które chcesz mieć w projekcie i ściąga potrzebną wersje, albo aktualizuje.
-------------------------
http://yeoman.io/
- Tworzy i rozbudowuje szkielet aplikacji - korzysta z gotowych generatorów
(aplikacje/strony mobilne, rozszerzenia firefox'a/chroma, wordpress itp),
tworzy też procedury dla Grunt'a/Glup'a i zestawy testów jednostkowych.
-------------------------
Instalacja w cmd:
Czy masz zainstalowanego nodejs ?
nie:
- pobierz z https://nodejs.org
tak:
sprawdzamy wersje nodejs & npm
npm --version
Czy masz plik package.json
Nie:
{
- generate file package.json
npm init
- zainstaluj grunt globalnie
npm install -g grunt-cli
- zainstaluj grunt'a i modułów w projekcie
npm install grunt --save-dev grunt-contrib-connect grunt-contrib-watch --save-dev
- instal karma :supports test-driven development i moduły
npm install karma grunt-karma karma-jasmine jasmine-core karma-browser-reporter karma-story-reporter --save-dev
- instal launcher for browsers to test for karma
npm install karma-chrome-launcher karma-cli karma-firefox-launcher karma-ie-launcher karma-phantomjs-launcher karma-script-launcher --save-dev
}
Tak:
npm install
- Tworzymy pliki config
* gruntfile.js
* karma.config.js
zapomniałem o Composer jest dla php
https://getcomposer.org/
Tu za instalacje odpowiada w CMD
phar i wget
wget https://phar.phpunit.de/phpunit-6.5.phar
php phpunit-6.5.phar --version
ale opisze bardziej innym razem
.
plik
config phpunit
phpunit.xml
czwartek, 28 marca 2019
Postanowiłem uporządkować trochę moją pracę i zebrać narzędzia które znam i zacząć ich używać .
Jest znany problem ludzi którzy tak są zajęci nauką, że zapominają wdrażać tej wiedzy.
Mimo, że pozornie się rozwijają to stoją w miejscu.
Startujemy.
Źródło https://www.youtube.com/watch?v=vRqvaTasYZc za Romanem
Dźwięki do puszczania przy pracy ( dźwięki tła / białe dźwięki )
https://www.noisli.com/
wtyczki do przeglądarki:
https://muz.li/ - Źródło inspiracji - przy otwarciu nowej karty pokazuje informacje z różnych portali.
http://raindrop.io - pozwala uporządkować zakładki ( kiedyś chciałem coś takiego napisać bo się gubię w ilości zakładek )
Do robienia notatek
https://evernote.com/intl/pl
https://bear.app/ jest na mac'a :(
Program do grafiki
https://www.sketch.com/get/ (30 dni free )
GIT
dodawanie aliasów dla terminala
editconfig
https://stackoverflow.com/questions/2553786/how-do-i-alias-commands-in-git
Telminal od zsh ?
https://github.com/changs/slimzsh
Dobra bobas wstał i żąda uwagi
Pozdrawiam i zanikam
Łukasz
Jest znany problem ludzi którzy tak są zajęci nauką, że zapominają wdrażać tej wiedzy.
Mimo, że pozornie się rozwijają to stoją w miejscu.
Startujemy.
Źródło https://www.youtube.com/watch?v=vRqvaTasYZc za Romanem
Dźwięki do puszczania przy pracy ( dźwięki tła / białe dźwięki )
https://www.noisli.com/
wtyczki do przeglądarki:
https://muz.li/ - Źródło inspiracji - przy otwarciu nowej karty pokazuje informacje z różnych portali.
http://raindrop.io - pozwala uporządkować zakładki ( kiedyś chciałem coś takiego napisać bo się gubię w ilości zakładek )
Do robienia notatek
https://evernote.com/intl/pl
https://bear.app/ jest na mac'a :(
Program do grafiki
https://www.sketch.com/get/ (30 dni free )
GIT
dodawanie aliasów dla terminala
editconfig
https://stackoverflow.com/questions/2553786/how-do-i-alias-commands-in-git
Telminal od zsh ?
https://github.com/changs/slimzsh
Dobra bobas wstał i żąda uwagi
Pozdrawiam i zanikam
Łukasz
wtorek, 22 maja 2018
Strona sklepu
Pierwsze podrygi w sieci zaczęliśmy od fan-page na Facebooku PiernikarniaCafe.
Dodatkowo działa też fan-page Matka Polka Piernicząca.
Rozwijamy się i od jakiegoś czasu pracujemy nad stroną - Piernikarnia jest już też w sieci poza portalami społecznościowymi.
Dostawa Prezentów
Dajcie nam trochę czasu na wypełnienie strony treścią i uruchomienie sklepu internetowego.Wysyłki są już przetestowane, zamówienia przyjmujemy:
- Telefonicznie
- fan-page
- w lokalu
informacje są w zakładce Kontakt na stronie.
Jeśli macie jakieś propozycje na poprawki zapraszamy do pisania.
Konstruktywna krytyka, czy feedback od was, pomoże nam lepiej współpracować w przyszłości.
Może inni podpatrzą u nas wasze rozwiązania które zastosują u siebie?
Pozdrawiam
Łukasz Martyn
czwartek, 18 czerwca 2015
Park Wschód cz.2 - Pisz miejsce dla rodziców z dziećmi
Część 2 wpisu "Park wschód", w którym pisałem o pomyśle na zagospodarowanie przestrzeni miejskiej w Piszu
Kazik śpiewał [link do YouTube]
Każdy znajdzie wymówkę by nic nie robić, ale czy chcemy by siłą nas uszczęśliwiano?
Działania promocyjne pomysłu:
Działania własne:
Zabezpieczam (gromadzę):
Kazik śpiewał [link do YouTube]
Siłom możesz mi zabrać wiele,
ale siłą nie możesz mi niczego dać.
[...]
Nie mogę nic zrobić muszę kupić wódkę tatowi.
Każdy znajdzie wymówkę by nic nie robić, ale czy chcemy by siłą nas uszczęśliwiano?
Działania promocyjne pomysłu:
W Wilanowie mieszkańcy wzięli sprawy w swoje ręce i poszli wyrwać kawałek przestrzeni dla siebie - bagna ursynowskie obsadzili krzaczkami i wytyczyli ścieżki.
- Pojechałem w okolice planowanego Parku i krążyłem po osiedlu szukając kogoś komu powiem o pomyśle o którym właśnie piszę.
- Sam będę działał powoli
- Jeśli chcesz nawet tylko pogadać to Jestem osiągalny w Piernikarni Cafe
- Złotówka wydana przez obywatela jest więcej warta niż 100zł przez urzędnika
- Chce widzieć, że ludzie chcą by tam coś się działo.
- Napisałem też do Piskie Forum - mają hasło : "Razem zmienimy Pisz", jutro 19.06.2015 mają zebranie, może poruszą ten temat.
Działania własne:
Zabezpieczam (gromadzę):
- Materiały budowlane (żwir, płyty wiórowe, deski, trawę-nasiona )
- Zdjęcia lotnicze terenu
- Informacje o istniejących ścieżek i zaznaczam na zdjęciach
- Informacje jacy ludzie tam spacerują (młodzież, ludzie z psami itp.)
- Informacji o roślinach - co tam rośnie naturalne
- Informacji o glebach jakie tam występują
- Informacje gdzie są hydranty ( dostępna woda )
- Zrobić foto dokumętacje
- Zrobić inwentaryzację terenu
- Sprawdzenie planu zagospodarowanie gminy (czy może tam za rok plac budowy nie będzie)
- Zdobyć pozwolenie, albo zgłosić projekt
- Promocja
Subskrybuj:
Posty (Atom)