רעיון טוב לשרשור! הכלים שלי:
המחשב הראשי: Ubuntu 16.4 LTE נייד: Ubuntu 18.10
לא אוהב לשדרג מערכת הפעלה וגם לא ממש מתחבר למעבר ל-GNOME בגרסאות האחרונות של Ubuntu.
 
עיסוק עיקרי: פיתוח יישומי Android.
כלי פיתוח עיקרי: Android Studio
 
יתרונות:
* מסופק ע"י יצרן המערכת כך שמובטחת תאימות 100% ותמיכה בפיצ'רים ב-100%
* מקבל עדכונים בתדירות גבוהה ובצורה אוטומטית
* מבוסס על סביבת פיתוח וותיקה ועשירה IntelliJ כך שהוא מצטיין בהשלמה ויצירה אוטומטית של קוד. מוריד משמעותית את כמות הכתיבה שעלי לעשות
 
חסרונות:
* כבד ואטי אפילו על עמדות פיתוח טובות
* מכריח אותך להשתמש ב-Gradle בתור build system
* לא מופץ דרך מאגרים של הפצות, אז התקנה ראשונית ידנית, ויושב במקום בו תוכנות לא אמורות לשבת בד"כ
 
בנוסף, אני עוסק פה ושם בפיתוחים ב-C, ++C, Python ו-BASH.
 
לפיתוחים הקטנים אני משתמש ב-Gedit
יתרונות:
* מובנה בהפצה
* תומך במגוון רחב של שפות
* פשוט וקל לשימוש
* ניתן להרחבה דרך plugins עד ל-IDE מלא
 
חסרונות:
* חלק מפרויקט Gnome אז בכל גרסה חדשה הם הורסים אותו יותר ויותר
* לא מתמודד עם קבצים גדולים (מספר מגה) או שורות ארוכות במיוחד (אלפי תווים)
 
כש-Gedit נכשל, אני משתמש ב-Geany.
יתרונות:
* תומך במגוון שפות
* קליל אבל מכיל מהקופסה פיצ'רים של IDE אמתי
* מתמודד מצוין עם קבצים ושורות בכל גודל
 
למי שתוהה למה לכל הרוחות מפתח צריך להתמודד עם שורה של יותר מ-200 תווים, התשובה היא שלא כל קוד שצריך להבין, הכותב שלו רצה שתבין
 
כאשר הקובץ נגיש יותר משורת פקודה, או התיקונים קטנים יחסית, אני משתמש ב-VIM.
הוא כלי מאוד חזק, אך קשה ללמידה, לפחות עבורי, אז למרות כמה ניסיונות להתעמק בו, אף פעם לא הגעתי למצב שאני מאמץ אותו בתור כלי עבודה עיקרי.
 
ולבסוף:
לפיתוח Python אחרון שעשיתי לקחתי את Visual Studio Code לנסיעת מבחן.
יתרונות שמצאתי:
* מגיע עם ערכת צבעים קהה ישר מהקופסה
* סביבה קלילה יחסית אך עם פיצ'רים מאוד אשירים
* תומך בשפות רבות
* מופץ כחבילת התקנה למנהל החבילות (למרות שעדיין לא במאגרי הפצות משום מה)
* ניתן להרחבה ע"י פלאגינים
 
חסרונות:
* עדיין מלא באגים - הייתי צריך לחפש ברשת מעקפים כדי להפעיל את התוספים ל-GIT, ו-ctags שיציג את כל רכיבי הקוד של Python, ולמודול refactoring.
* התקנת backend של התוספים בסביבת לינוקס שבורה ודורשת התערבות ידנית
* refactoring עדיין לא עובד חצי מהזמן (לפחות זה של Python), יש להם באג פתוח על זה כבר כמה חודשים, ואיש לא מטפל