Идеята е да е максимално неформално. Организацията да е максимално low key, self-organized, извън организацията на Open Fest.
Общо-взето, разполагаме с два часа, които ние решаваме как да запълним.
Варианти:
➜ ~ sh -x pow.sh | |
+ set -e | |
+ POW_ROOT='/Users/dimitardimitrov/Library/Application Support/Pow' | |
+ NODE_BIN='/Users/dimitardimitrov/Library/Application Support/Pow/Current/bin/node' | |
+ POW_BIN='/Users/dimitardimitrov/Library/Application Support/Pow/Current/bin/pow' | |
+ LATEST_VERSION=0.5.0 | |
+ '[' -z '' ']' | |
+ ARCHIVE_URL_ROOT=http://get.pow.cx/versions | |
++ uname -s | |
+ '[' Darwin '!=' Darwin ']' |
“Система за контрол на версиите” е софтуерен продукт за следене на промените по | |
дадено съдържание (текст, програмен код, двоични файлове), функциониращ независимо | |
от и в допълнение на инструментите, с които се създава съдържанието. Системите за | |
контрол на версиите трябва да позволяват правенето на “снимки” на моментното | |
състояние на съдържанието и предоставят възможност да се преглеждат разликите | |
между всеки две “снимки” (версии), връщането към предишно състояние (“снимка”) | |
на съдържанието при необходимост, както и пълна отчетност кой и кога е създал | |
или променил определена част от съдържанието. |
Фийдбек от сбирката в Торонто след лекцията днес
#!/bin/sh | |
set -e | |
if [ "$1" = "" -o "$2" = "" ]; then | |
echo "Usage: $0 /path/to/source.iso /dev/usb_disk_device" >&2 | |
exit 1 | |
fi | |
iso_source="$1" |
class Person | |
def greet(name) | |
puts "Hello, #{name}!" | |
end | |
end | |
# This will fail with the following error: | |
# ArgumentError: wrong number of arguments (2 for 1) | |
# This is because `super` calls Person#greet('Sir', 'Lancelot') | |
class NoblePerson < Person |
$ aspell dicts | |
en | |
en-variant_0 | |
en-variant_1 | |
en-variant_2 | |
en-w_accents | |
en-wo_accents | |
en_CA | |
en_CA-variant_0 | |
en_CA-variant_1 |
ето ти crash course как предполагам, че работи symfony (базирано на опита ми с Rails, от който всички копират):
идва заявка от потребител/браузър за даден адрес: http://example.com/foo/bar?baz=baba&larodi=foo
заявката минава през някакъв уеб сървър; примерно, Apache или Nginx и според настройките на уеб сървъра, се решава какво да стане с нея; обикновено, ако е за съществуващ статичен файл (картинка, CSS файл, JS файл и т.н.), файлът се праща на клиента и толкова; ако не е за съществуващ файл, обикновено се препраща на някакъв PHP код; да кажем, на твоето Symfony приложение
Symfony получава препратената заявка и решава какво да я прави; вижда, че тя е GET /foo/bar?baz=baba&larodi=foo
. Прави следните стъпки:
?
се нарича query string и съдържа key-value параметри; всяка двойка е разделена с &
; в случая, параметрите са baz=baba
и larodi=foo
; symfony ги слага в някакъв (асоциативен) списък (по-скоро речник, но PHP го нарича array): `$params = array('baz'Поради големия интерес, обобщавам случилото се днес по горещата тема с изтриването на акаунта на "Общество.бг" от GitHub. Това е и нещо като post-mortem с поуките, които сме си извадили.
UPDATE 18 февруари - Акаунтът на Общество.бг е възстановен и с много малки изключения, сме на 99% обратно в играта.
Aкаунтът е изтрит по погрешка и без лоша умисъл. Свързали сме се с поддръжката на GitHub и чакаме отговор от тях. В най-лошия случай, ще ни отнеме няколко дни да възстановим хранилищата и кода на проектите и ще изгубим само метаданните за тях (issues, wikis, pull requests). Засега сме на stand-by.
# Force HTTPS | |
server { | |
listen 80 default; | |
server_name example.com *.example.com; | |
rewrite ^ https://$server_name$request_uri? permanent; | |
} | |
server { | |
listen 443 ssl; | |
server_name example.com *.example.com; |