بایگانی برچسب: s

به نیمه اکتبر رسیدیم ولی هنوزم وقت دارین توی هَکتُبرفِست، تی شرت برنده بشین

آلمانی ها یه جشن به اسم اکتبرفست دارن که تو تبلیغات این شکلی است:

اما هکرها هم یه هکتبرفست (Hacktoberfest) دارن که شکلش می تونه از یه آدم توی خونه باشه تا یه پارتی صبح تا عصر دورهمی کامپیوتر به دست و پیتزا به دهن و لیوان در کنار. ایده هم به اینه که آدم ها عادت کنن در پروژه‌های اوپن سورس و آزاد مشارکت کنن. این برنامه توسط دیجیتال اوشن، گیت هاب و تویلیو اجرا می‌شه و خلاصه اش اینه:

بعد از ثبت نام در سایت هکتبرفست در طول ماه اکتبر ۵ تا پول ریکوئست به پروژه‌های دیگران در گیت‌هاب بفرستین و یکی از دریافت کننده‌های ۵۰هزار تی‌شرت ایونت بشین؛ به همراه استیکرها و از همه مهمتر، سابقه ۵ تا پول ریکوئست

معلومه که اولین سوال‌های خیلی‌ها اینه که «نمی شه به خودمون/دوستمون پول ریکوئست بدیم؟» جواب اینه که احتمالا با کمی تقلب می شه ولی خب چه کاریه. مساله اصلی هکتبرفست اینه که آدم‌ها رو درگیر پروژه‌های دیگران بکنه و یاد بگیریم مشارکت کنیم و کارهای مثبت بکنیم.

پس پیشنهادم اینه که برای پیشرفت خودمون توی این ماه، اگر احیانا گیت بلد نیستیم، یادش بگیریم و بعد در سایت هکتبرفست ثبت نام کنین و در نهایت توی گیت هاب به پنج تا پروژه در طول این ماه PR بزنیم و منتظر جایزه مون بمونیم. لازم نیست حتما پول ریکوئست‌های ما قبول بشن ولی خب اسپم هم نباید باشن. اگر هم ریپویی دارین که دوست دارین بقیه توش مشارکت کنن می تونین با تگ Hacktoberfest اونو مشخص کنین.

اگر تازه کار هستین جاهایی مثل این و این می تونن جاهای خوبی برای پیدا کردن اولین مشارکت های شما باشن.

اینم بگم که اگر موفق شدین و تی شرت رو گرفتین عکستون رو برام بفرستین که در یک مطلب جدا بذارم. خودم واقعا نخواهم رسید به خاطر کارها و واقعا حیفه. امیدوارم سال بعد بتونم میزبان یه هکتوبرفست باشم (:

آپدیت:
اینجاها هم برای پیدا کردن اولین باگ ها خوبن:
فهرستی از باگ های خوب برای تازه کارها
سرچ گیت هاب برای باگ های مناسب تازه کارها بر اساس زبان

انتشار رایگان دوره گیت جادی برای مدیریت توزیع شده سورس ها

گیت این روزها مشهورترین و احتمالا پر کاربردترین روشی است که می تونیم باهاش سورس برنامه‌هامون رو مدیریت کنه. در واقع به جای درست کردن یک فولدر «پروژه» و بعد درست کردن یک New folder توش و بعد از مدتی کار کپی کردن New Folder به Working-18tir و بعد کار کردن روی یک فچیر و ذخیره کردن همه کارها در Final2-give2boss و بعد رفع باگ و درست کردن final3-full و … می تونیم به گیت بگیم همه تغییرات رو یادش نگه داره و ورژن بزنه و کد یکی دیگه رو با ما ترکیب کنه و کد جدید رو اسمگذاری کنه و غیره و غیره.

به نظرم دارم توضیحات چرت می دم (: خلاصه بحث اینه که با پیگیری دوستان فرادرس، من بالاخره دوره گیت رایگان رو تموم کردم و می تونین اگر لازم بود ثبت نام کنین. گیت چیزی است که شکی نیست هر کجای دنیای آی تی که باشین به دردتون می خوره و اگر از من می پرسین، هر کسی که با تغییر فایل ها سر و کار داره هم خوبه ازش بسیار بسیار استفاده کنن پس لازمه یک دونه رایگانش باشه، امیدوارم که خوب هم باشه.

سرفصل‌ها اینها هستن:

  • درس یکم: مقدمات گیت و نصب آن
  • درس دوم: اولین اینیت (init) و اولین کامیت
  • درس سوم: بررسی تاریخچه کارها
  • درس چهارم: بررسی تغییرات انجام شده
  • درس پنجم: آشنایی با شاخه ها یا همان برنچ ها (Branch)
  • درس ششم: کمی بیشتر در مورد برنچ ها
  • درس هفتم: آشنایی و استفاده از گیت هاب (GitHub)
  • درس هشتم: بررسی و حل کانفلیکت های (Conflict) ریموت
  • درس نهم: تگ زدن برای شناسایی نسخه ها
  • درس دهم: امضا کردن تگ ها و کامیت ها
  • درس یازدهم: دیباگ کردن با کمک گیت
  • درس دوازدهم: آشنایی با گیت لب و مشارکت در پروژه ها

جادی تی وی – اصلاح یک سورس گیت هاب با استفاده از کامندلاین

یک اصلاح ساده در آیا من فمنیستم؟ لازم بود و گفتم ضبطش کنم تا شاید بشه شروعی برای ویدئوهای گیت. اینجا یک پروژه رو کلون می کنیم، تغییر می دیم، کامیت می کنیم و می فرستیم بالا. بیشترین کاری که در دنیا با گیت می شه. فقط دقت کنین که من به اون رپوزیتوری دسترسی داشتم وگرنه بهم گیر می داد. هدف این ویدئو اینه که اگر با گیت کار نمی کنین، ایده بگیرین که چجوریه و ببینن که چقدر راحت و بانمکه.

گیت لب عالیه؛ از هر دو نظر

این اصطلاح «عالیه» یک جور متلک هم هست ولی خب خشن نیست. حداقل تو گفتار من. حالا هم گیت‌لب هنر خاصی زده و از چند ساعت قبل داون است. چرا؟ توییترشون می گه:

ظاهرا یک سیستم ادمین عزیز نیمه‌همکار ما زده دایرکتوری مهمی رو پاک کرده و با اینکه کل رپوزیتوری ها سرجاشون هستن، درخواست های پول ریکوئست و غیره پاک شدن. حداقل این برداشت من بوده. بک آپ ها که لحظه ای نیستن و ظاهرا اونها هم مشکل دارن.

حالا چرا عالیه؟ چون شفاف و معقول اینها رو گفته و چون یک داکیومنت آنلاین درست کرده که هر قدم تعمیراتی رو به ما می‌گه:

GitLab.com Database Incident - 2017/01/31



This incident affected the database (including issues and merge requests)
but not the git repo's (repositories and wikis).

Timeline (all times UTC):

2017/01/31 16:00/17:00 - 21:00

YP is working on setting up pgpool and replication in staging, creates
an LVM snapshot to get up to date production data to staging, hoping he
can re-use this for bootstrapping other replicas. This was done roughly
6 hours before data loss.

Getting replication to work is proving to be problematic and time
consuming (estimated at ±20 hours just for the initial pg_basebackup
sync). The LVM snapshot is not usable on the other replicas as far as YP
could figure out. Work is interrupted due to this (as YP needs the help
of another collegue who’s not working this day), and due to spam/high
load on GitLab.com

2017/01/31 21:00 - Spike in database load due to spam users - Twitter
| Slack

Blocked users based on IP address

Removed a user for using a repository as some form of CDN, resulting in
47 000 IPs signing in using the same account (causing high DB load). This
was communicated with the infrastructure and support team.

Removed users for spamming (by creating snippets) - Slack

Database load goes back to normal, some manual PostgreSQL vacuuming is
applied here and there to catch up with a large amount of dead tuples.

2017/01/31 22:00 - Replication lag alert triggered in pagerduty Slack

Attempts to fix db2, it’s lagging behind by about 4 GB at this point

db2.cluster refuses to replicate, /var/opt/gitlab/postgresql/data is
wiped to ensure a clean replication

db2.cluster refuses to connect to db1, complaining about max_wal_senders
being too low. This setting is used to limit the number of WAL (=
replication) clients

YP adjusts max_wal_senders to 32 on db1, restarts PostgreSQL

PostgreSQL complains about too many semaphores being open, refusing
to start

YP adjusts max_connections to 2000 from 8000, PostgreSQL starts again
(despite 8000 having been used for almost a year)

db2.cluster still refuses to replicate, though it no longer complains
about connections; instead it just hangs there not doing anything

At this point frustration begins to kick in. Earlier this night YP
explicitly mentioned he was going to sign off as it was getting late
(23:00 or so local time), but didn’t due to the replication problems
popping up all of a sudden.

2017/01/31 23:00-ish

YP thinks that perhaps pg_basebackup is being super pedantic about there
being an empty data directory, decides to remove the directory. After
a second or two he notices he ran it on db1.cluster.gitlab.com, instead
of db2.cluster.gitlab.com

2017/01/31 23:27 YP - terminates the removal, but it’s too late. Of
around 310 GB only about 4.5 GB is left - Slack

و از اون بالاتر حتی لایو استریم می کنه تو یوتوب من در واقع گیت لب رو دوست دارم و به نظرم خوبه در موردش بیشتر حرف بزنیم و حتی بهش سوییچ کنیم. دلیل اصلی اش اینه که اجازه می ده ما رپوزیتوریهای خصوصی هم داشته باشیم و خب وقتی اجازه می ده من رپوزیتوریهای غیرآزادم رو روش بذارم به نظرم قشنگتر اینه که من رپوزیتوری های آزادم رو هم ببرم اونجا. این مستقل از بحث های فنی است و قابلیت هایی که برای کار داره.

همینجا تصمیم رو قطعی می کنیم که در مقابل شماره رادیو گیک در مورد گیت هاب یک شماره هم در مورد گیت لب بسازیم. بسیار شرکت جالبی است و آدم های جالبی پشتش هستن. امیدوارم این استرسشون زودتر تموم بشه.

مرتبط:
چرا دراپ باکس می گه پسوردهاش لو رفته؟

بستون ۱۴ تا ۱۶: دیدن آمار، مرج کردن پروژه در گیت‌لب و کامند لاین و شروع اپ اندروید و آیفون

در ادامه پروژه بستون، ما یک اسکریپت کوچیک می نویسیم که بتونه آمار کارهامون رو نشون بده بعد چند تغییر که بقیه توی پروژه دادن رو مرج می‌کنیم و در نهایت پا در راهی جدید می‌ذاریم: ساخت اپ اندروید و آیفون و بقیه با کمک کوردوا و ایونیک. با ما باشین که داریم شروع یک استارتاپ تکنولوژیک رو از درون دنبال می‌کنیم.

بستون ۱۴ – دیدن آمار مقدماتی از سیستم

تمیزکاری که همیشه هست ولی به طور خاص توی این شماره به افتخار کسانی که شروع کردن به استفاده کردن از سیستم، یک برنامه کلاینت ساید اضافه می کنیم که آمار مقدماتی‌ای از میزان خرج و دخل رو بهمون بده. برنامه داره قابل استفاده می‌شه!

بستون ۱۵ – مرج کردن دو تا پول ریکوئست

اوه! گیت داره جدی می‌شه. دو نفر از دوستان تغییراتی روی بخش‌هایی از کلاینت پروژه دادن و من اونها رو یکبار از طریق خود سایت گیت‌هاب و یکبار از طریق کامند لاین مرج می‌کنم با پروژه اصلی. آماده این با گیت ور برین؟

بستون ۱۶ – شروع ساخت اپ انواع گوشی با آیونیک و کوردوا

خرج ها رو کجا می کنیم؟ پشت کامپیوتر؟ نه… در حال حرکت! پس لازمه یک اپ هم برای پروژه داشته باشیم. در این قسمت اولین استخون بندی اش رو راه اندازی می کنیم و حتی بخشی از آمارها رو هم نشون می دیم. خیلی چیزها هارد کد شده ولی این فقط قدم اوله. ما حالا اپ اندروید، آی او اس،‌ ویندوز فون و بلک بری داریم؛ به افتخار آیونیک و کوردوا.

لینک‌های ویدئوها