اگر با این زبان های برنامه نویسی کار کردین هدفتون از یادگیری و نتیجه ای که در نهایت ازش گرفتین چی بوده؟

سلام
در این انجمن افراد با تجربه زیادی داریم و خیلی دلم میخواد از این تجربه استفاده کنم و هدف از این پست هم همینه.
برای همین من یه تعداد زبان رو در زیر مینویسم اگه با هرکدوم از این ها کار کردین:
اول بگین هدفتون از یادگیری و شروع برنامه نویسی با اون زبان چی بوده؟
و بعدش توضیح بدین که بعد از یادگیری چه پروژه هایی رو با اون زبان کار کردین و چرا همون پروژه خاص رو با اون زبان نوشتین؟ چه مزیتی داشته نوشتن اون پروژه با اون زبان؟
ببینید مثلا من خودم python رو بیشتر برای django یاد گرفتم حالا فرضا پایتون برای ML خوب باشه من نمیتونم اینو بگم چون من با پایتون ML کار نکردم. برای همین لطفا فقط کار هایی که خودتون واقعا با اون زبان انجام دادین رو بگین.

Python
Ruby
Clojure
LISP
Elixir
Erlang
Haskell
Perl
Rust
2 Likes

قبل از یادگیریش هدفی نداشتم بیشتر در انجمن صحبتش شد و زبان مدرن و خوش ساختی بود و نوشتنش داخلش خیلی حال می داد در کل یک جور دیگه بود که تاحالا کار نکرده بودم و مهمش این بود که فانکشیونال بود.

ولی از وقتی جدی تر شد که برای من پروژه های وب سرویس خیلی زیاد می اومد و من دنبال این بود که یک زبانی رو استارت بزنم که در این زمینه قدرتمند باشه مخصوصا فریم ورک خوبی در زمینه وب داشته باشه. امکانت و سرعت توسعه زیادی برای وب سرویس داره

بعدا دیدم که خیلی بیشتر از تصورم امکاناتش مثل otp برام کاربرد داره و خیلی سریع هست و می شه چندین کارو با هم موازی انجام داد

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

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

و مهمترین چیزش جامعه بسیار قدرتمند و انجمن بسیار فعال خودش منظور انجمن elixir


یک نکته ای کل یادگیری این زبان یا کلا در یک محیطی افتادن خیلی به شرایط و افراد اطرافت داره واقعا به عنوان مثال اگر @samdvr عزیز نبود بنده اصلا اینو تا ساخت یک فرم ساده هم یاد نمی گرفتم.

در کل همه اینا ابزارند و اینکه بر اساس کاری که می کنیم باید بریم دنبالش به نظرم همشون خوبند و هرکدوم برای هر کاری درست شدند با اینکه وقتی توشون حرفه ای باشی با زمان بیشتر می تونی تمام نیاز هاتو پوشش بدی

6 Likes

روبی بعد php برای ریلز یادگرفتم چند سال ریلز کار کردم و بعد روبی با فریمورک های دیگه از ریلز کناره گرفتم بعد از روبی. روبی سینتکسش عالیه و ریلز هم فریمورک خوبیه نسبت به خیلی فریمورک های دیگه
ولی خیلی سنگینه و در پروژه های بزرگ من با بعضی از تصمیم های طراحی ریلز موافق نیستم روبی هم ارتقا پذیری خوبی نداره و تایپ نداره در پروژه های بزرگ حتی اگه ۱۰۰ کد تست شده باشه باز خطای runtime احتمالش وجود داره
سکالا و الیکسیر برای ارتقا پذیری همزمان یادگرفتم
و سکالا را جدی تر دنبال کردم و چندین پروژه با سکالا در کار نوشتم و هنوز سکالا کار میکنم
برای اینکه مباحث پیشرفته fp در سکالا رو بهتر بفهمم
هسکل یادگرفتم
@shahryarjb لطف داره پشتکار خودت بود من زیاد الیکسیر بلد نیستم که یاد بدم

6 Likes

Python

با زبونهای دیگه‌ای کار میکردم و خیلی خوشحال بودم تا اینکه نیاز پیدا کردم یه پلاگین برای یه نرم‌افزار گرافیکی (blender) بنویسم. دیدم باید پایتون یاد بگیرم. رفتم سراغش و اینقدر خفن بود که الآن بعد از گذشت چند سال همه کار انجام دادم بجز نوشتن اون پلاگین ساده :joy:
پایتون رو برای لایبرریها و فریموورکهای زیاد و خوبی که داره دوست دارم. انعطاف بالا، راحتی و سادگیش هم عامل مهمیه.

Lisp

قدیما یه کم رفتم سراغ لیسپ و در حد آشنایی باهاش کار کردم ولی دلیل قانع کننده‌ای برای ادامه نداشتم. مخصوصا به خاطر پلتفورمش و اینکه دیدم کارایی خاصی نداره در دنیای امروز (اشتباه از من بود!)

Clojure

کلوژر یک lisp هست. یک لیسپ پر قدرت با پلتفورم قوی و گسترده (jvm به علاوه‌ی js) یادگیری یک لیسپ، شاید بهترین لطفی باشه که یه برنامه نویس میتونه در حق خودش انجام بده. حالا چقدر خوب میشه که این لطف به درد پول در آوردن هم بخوره.
با توجه به اینکه لیسپ خیلی خفنه و کلوژر احتمالا خفنترین لیسپ به حساب میاد، یادگیری و استفادش رو به هر کسی که میخواد پیشرفت کنه پیشنهاد میکنم.
پتانسیلهای نامحدودی توی برنامه نویسی با لیسپ‌ها وجود داره و حالا کلوژر همه‌ی اونها رو بهمون ارائه میده به اضافه‌ی قابلیتها و ویژگیهایی که برای سخت‌افزارهای مدرن و مشکلات مدرن طراحی شدن.
کلا از تصمیم‌گیریهای تیم کلوژر خیلی راضی هستم. (چیزی که درمورد اکثر زبونهای دیگه نمیتونم بگم!)

Haskell

با هسکل کار نکردم ولی یادگیریش آدم رو یه پله بالاتر میبره.

Rust

توی لیست شما نبود ولی آینده‌ی روشنی داره. خیلی جوونه ولی تا همینجای کار، خودشو به خوبی نشون داده.
اگه بد بود که mozilla ازش استفاده (و پشتیبانی) نمیکرد!


در نهایت، کسی که Clojure و Rust رو یاد بگیره، دیگه اون آدم سابق نمیشه :wink: (شاید درمورد زبونهای دیگه‌ای هم این حرف صادق باشه ولی من تجربشو ندارم)

3 Likes

من تازه شروع کردم rust یاد بگیرم و خیلی خوبه

4 Likes

یه نکته‌ی دیگه هم باید بگم که تا حدودی به این تاپیک مربوط میشه.
به شخصه تا زمانی که توی جمع‌های برنامه نویسی مثل همین وبسایت نبودم، با زبونهای خوب و درست حسابی آشنا نشدم. من قبل از پایتون با php و js کار میکردم. دوران تاریکی از زندگیم بود و فکر میکردم خیلی دوران روشنیه :joy:

اگه هر کسی در اطرافتون هست که دلتون میخواد پیشرفت کنه، از طرف من بهش بگید تا توی جمع‌های این مدلی نباشه، با چیزهای جدید آشنا نمیشه و همیشه فکر میکنه همون چیزهای اطراف خودش، تنها گزینه‌هاش هستن.

2 Likes

@pouya-abbassi
@samdvr
توی کامیونیتی زبان V خیلی از راست بدی میگن راستش زیاد سردرنمیارم ولی اگه درمورد این زبان چیزی میدونین هم نظرتون رو بگین

2 Likes

تاحالا من زبان V ندیده بودم

2 Likes

دقیقا
اصلا هدفم از ایجاد این تاپیک همین بود
من هم مثل شما داشتم php کار میکردم و سر یه قضیه ای توی یه تاپیک این موضوع رو عنوان کردم و خیلی ها به من گفتن بیخیال php بشم ولی من گوش نکردم بعد یه مدت نسبتا زیادی (یک ماه) دقیقا به حرفشون رسیدم
الآن دارم clojure یاد میگیرم و هنوز خیلی خیلی زیاد اول راهم با این حال خیلی دارم باهاش حال میکنم در صورتی که قبل از اومدنم به این انجمن اصلا نمیدونستم clojure چی هست (یکمی باعث خجالته ولی حتی LISP هم نمیدونستم چیه :joy: ) و بیشتر به خاطر @lxsameer عزیز بود که رفتم سراغ clojure . چون ایشون خیلی از این زبان تعریف میکردن و میدونم تجربه زیادی هم دارن بهشون اعتماد کردم.
در واقع علت اصلی شروع یادگیری clojure این حرف ایشون بود:

2 Likes

اصلا حواسم به rust نبود اون هم قطعا به لیست اضافه میشه
و در کل هر زبانی که توش تجربه کاری دارین و فکر میکنید میتونه یادگیریش برای بقیه هم مفید باشه میتونید در موردش صحبت کنید
من این لیست رو برای زبانایی نوشتم که خیلی ازشون شنیدم و برنامه نویساش خیلی ازش تعریف میکنن و قطعا rust هم جزوشون هست ولی من فراموشش کردم


منتظر @lxsameer و @toomaj هم هستم. ممنون میشم شما هم نظرتون رو بگین.

1 Like

من در کل تا الان زبان های زیادی رو یاد گرفتم. هدفم از یادگیری اینه که نکات مثبت و منفی خط فکری هرکدوم رو یاد بگیرم تا بتونم دید وسیع تری داشته باشم. به نظرم هیچ زبان کاملی وجود نداره هر زبانی یه سری بدی داره و یه سری خوبی که دونستنشون خیلی مفید هست. تو زبان هایی که لیست کردی بجز elixir با بقیشون با کارکردم یا تو برنامم هست که یادشون بگیرم یا مهارتم رو ببرم بالا ( مثلا می خوام rust یاد بگیرم و haskell رو بهتر یاد بگیرم ) اما در کل خیلی یه زبان lispy رو پیشنهاد می کنم که یاد بگیرید. بخاطر تفاوت زیادی که دارن و دیدگاه متفاوتشون خیلی می تونه براتون آموزنده باشه.

6 Likes

صادقانه بگم، نوتیفیکیشن تلگرام که برام اومد فکر کردم اشتباه تایپیه و میخواستید بنویسید C.
تو کامیونیتی C++ بعضیا از این زبون بد میگن. اونهم به خاطر اینه که داره جایگزین Cpp میشه و تو خیلی زمینه‌ها بهتر عمل میکنه. (خیلی سطح بالاتر کد میزنیم و خیلی سطح پایینتر اجرا میشه)
حتی من تاک‌هایی رو دیدم از سازندگان rust که توی کنفرانسهای Cpp ارائه داده بودن.

درمورد V نظری ندارم باید بیشتر مطالعه کنم.


من هم همینطور ولی اونموقع حتی توی این انجمن هم عضو نبودم.
یه توییت پر از خشونت از یه بنده خدایی (@lxsameer) دیدم درمورد کسانی که به خاطر سینتکس، از کلوژر بدشون میاد! یه سرچ کردم دیدم چقدر سینتکسش لیسپه :heart_eyes:
و الآن بعد از گذشت یک سال در خدمت شمام.

سعی کردم توییت رو پیدا کنم اینجا لینک کنم ولی سرعت نتم پایینه.

2 Likes

خشونت ؟ :joy::joy::joy::joy:
اصلا به من خشونت می خوره اخه؟

2 Likes

میخوره میخوره :thinking:


البته بی اجازه بازنشر کردم :cold_sweat:

3 Likes

شرمنده سمیر جان من قبلا تصاویر شما با لباس های رزمی دیدم. باید بگم متاسفانه بله :zipper_mouth_face:

3 Likes

توی توییتر یک نفر رو خیلی خشن متهم کرده بودین به تقلب و یکی هم ریپلای کرده بود که this is so rude
حالا من که نمیدونم قضیه چی بوده ولی با توجه به محتوای توییت و f-word ها باید بگم بله خشونت به شما میخوره :joy:

3 Likes

فکر می کنم این پست جاش نباشه ولی اون توئیت های خشمگین واسه فوتبال هست. تو تک خشمگین نیستم اصلا :blush:

2 Likes

واقعا خوشحالم که برنامه نویس توپی مث شما فوتبالیه. ولی چرا بارسا آخه!!!

1 Like

@husen @shahryarjb
حالا جالب ترین قسمت اینه با این روحیه خشن زبان ژاپنی و کارتن انیمه دوست داره :sweat_smile::sweat_smile:

4 Likes