PDA

View Full Version : مزایای رشتهء برنامه نویسی



eshpilen
پنج شنبه 13 آبان 1389, 22:25 عصر
بنظرم زیادی از برنامه نویسی شکایت شده. انگیزهء شکایت هم عمدتا بخاطر پوله و در درجهء بعد بخاطر وسعت و پیچیدگی زیادی که برای حرفه ای شدن در این رشته باید طی کرد و بعدش تازه تغییرات گسترده و سریع که در کمتر رشته ای هست.
اما باوجود اینها شخصا به برنامه نویسی عشق میورزم و فکر میکنم این چیزهایی که به عنوان معایبش میگن درواقع خیلی هاش بخاطر مزیت ها و خواص استثنایی علم رایانه و برنامه نویسی ایجاد شدن. درواقع رایانه و برنامه نویسی اینقدر موفق بوده که به سرعت شگرفی توسعه پیدا کرده و پیشرفت میکنه و تنها محدودیت در اون به توان تفکر و مدیریت و تطابق سریع انسانها نسبت به اون برمیگرده. و اینکه تقریبا تمام محدودیت در این رشته فقط به توان و ظرفیت های ذاتی آدمی برمیگرده، به دلیل اینه که این رشته از محدودیتهای فیزیکی معمول که خیلی رشته های دیگر رو سخت درگیر خودش میکنه تقریبا مبری هست.
در این رشته تقریبا تمام چیزهایی رو که به ذهن برسه به شرطی که درست باشه و تحلیل کافی بشه میشه عملی دونست و بیشتر چیزهایی رو که عملی باشن تقریبا هرکسی میتونه واقعیت بیرونی ببخشه و عملا ازشون استفاده کنه و بقول معروف حالشون رو ببره!!
یعنی ما در پیاده سازی ایده های صحیح در این رشته محدودیت های فیزیکی نداریم و ابزار و امکاناتش در دسترسی عمومی هست و حتی اقشار متوسط هم این دسترسی ها رو دارن. برنامه نویسی هم تفریحه و هم کار. هم برای استفاده های شخصی میشه استفاده کرد و هم برای تجارت و درآمد. یک فرد به تنهایی هم، در این رشته اگر نگیم همه کار، ولی میتونه خیلی خیلی کارها یا بیشتر کارهای جالب و حتی درآمدزا رو به شرط دارا بودن دانش و پشتکار لازم انجام بده. البته بعضیا مثل بنده، پول اولویت اولشون نیست. و میتونم بگم بیشتری افرادی که در این رشته بتونن واقعا حرفه ای و ماندگار بشن، احتمالا باید همینطور باشن؛ چون راهش واقعا سخته.
شما مقایسه کنید مثلا یه کسی که رشتهء اون فیزیک هست یا مهندسی مکانیک، معماری یا حتی شیمی و غیره، حتی اگر ایده ای هم داشته باشه، در خیلی موارد برای پیاده سازی این ایده، نیاز به امکانات و هزینه های خاص و سنگینی هست که بیشتر افراد از عهدش برنمیان. اگر شانس بیارن میتونن برای ایدهء خودشون سرمایه گذار پیدا کنن. و خیلی وقتها حتی در مراحل تست یا حتی توسعهء اون ایده هم به این امکانات فیزیکی خاص و سرمایه نیاز دارن که تامین نمیشه. درصورت تامین این امکانات و سرمایه، هنوز زمان پیاده سازی این ایده ها هم به هیچ وجه با سرعت پیاده سازی ایده ها و واقعیت بخشیدن به اونها در برنامه نویسی قابل مقایسه نیست. و با صرف اینهمه هزینه و زمان، کارهایی که اونها انجام میدن اغلب باید حتما موفق باشه و با شکست یا عدم بازدهی مالی مواجه نشه و نمیتونن خیلی ایده ها رو فقط برای تحقیقات و پیشرفت و یا تفریح و نیاز شخصی خودشون انجام بدن.
حالا برنامه نویسی رو مقایسه کنید. کاری راحت، تمیز، سریع، بدون وابستگی به امکانات و هزینه های سنگین. چیزی که میشه به سرعت عملیش کرد، حتی در مقیاس جهانی و صددرصد کاربردی، بدون نیاز به سرمایه گذار، یک نفری! چیزی که میشه براحتی بصورت نامحدود تکثیرش هم کرد.
برنامه نویسی یکی از استثنایی ترین و بهترین و ایدئال ترین علوم و فناوریهای بشری تا به امروز بوده. مراحل اساسی طراحی اون در ذهن و فقط با قدرت تفکر و دانش کافی انجام میشه، و نهایتا برای تست و عملی کردن هم به یک دستگاه رایانه و احتمالا امکانات اینترنت و شبکه نیاز داره که دسترسی به اونها برای تقریبا تمامی افراد ممکن هست.
بالاخره هرچیزی محدودیت و معایبی داره. اما بنظر من محدودیت ها و معایب برنامه نویسی میشه گفت کمتر از تمامی رشته های مدرن و جذاب امروزی هست. درواقع محدودیت و عیب های تصور شده، بیشترش بیشتر به محدودیت های خودمون برمیگرده تا این رشته!

اگر دنبال پول درآوردن هم باشید میبینید که هر کاری بالاخره معایب و سختی های خودش رو داره. ولی با اینحال قبلا گفتم و بازهم میگم که اگر آدم معیار اصلیش درآمد باشه بهتره بجای برنامه نویسی بره دنبال یه کار و بار دیگه.
درسته درآمد از طریق برنامه نویسی اونقدری که خیلی ها برای یک زندگی ایدئال توقع دارن راحت و زیاد نیست، اما درمقابل، این رشته مزایای بزرگی داره که به رایگان بدست میان.
مزایاش رو هم در توضیحات بالا میتونید ببینید. برای افرادی مثل ما این مزایا عین لذت و قدرت عمیق و بی پایانی هستند که ارزش معادل ثروت بسیار بزرگی رو داره. اما طبیعی هست که اگر شما واقعا به این رشته علاقه ندارید و نمیتونید اینطور بهش نگاه و درکش کنید و ازش لذت ببرید و قدرتش رو بکار بگیرید، چیز زیادی از مزایای اصلی این رشته برای شما باقی نمیمونه جز اینکه کار بدنی سخت نداره و کلاس داره و از این حرفا! اینا هم چیز زیادی نیست و آدم براحتی زده میشه. بخصوص که این رشته گسترده و پیچیده هست و تغییرات وسیع و سریع هم داره. اونی که درکش میکنه و لذت و قدرتش رو داره انگیزهء این رو هم داره که تمام این وسعت و پیچیدگی و تغییرات رو متحمل بشه؛ چون میدونه در پس این راه دشوار، جهانی آرمانی قرار داره. این جهان آرمانی پول نیست، گرچه میتونه پول هم جزوش باشه. ولی من فکر میکنم تنها کسانی قدرت بهترین بودن در این رشته رو دارن، که واقعا به این رشته بخاطر ماهیت و خواص استثنایی ای که داره عشق داشته باشن.

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

returnx
پنج شنبه 13 آبان 1389, 22:53 عصر
در اکثر موارد باهاتون موافقم بجز موارد زیر:

بعضیا مثل بنده، پول اولویت اولشون نیست
فکر کنم فقط اونایی که بجز برنامه نویسی شغل دیگری دارند این مبحث شاملشون میشه(یکی از دوستان در همین فروم بود وهست که مدرک مهندسی شیمی داشت قطعا واسه ایشون مثل شما اولویت اولشون نیست)

چیزی که میشه به سرعت عملیش کرد، حتی در مقیاس جهانی و صددرصد کاربردی، بدون نیاز به سرمایه گذار، یک نفری! چیزی که میشه براحتی بصورت نامحدود تکثیرش هم کرد.

در این مورد تا برنامه نویس به هدفش برسه پدرش در میاد:لبخند:
---------------------------------------------------------------
منم یه توصیه به دوستانی که قصد دارند در این رشته شروع به کار کنند میکنم:
اگه به برنامه نویسی علاقه ندارید هرگز برنامه نویس نشین!

eshpilen
پنج شنبه 13 آبان 1389, 23:17 عصر
فکر کنم فقط اونایی که بجز برنامه نویسی شغل دیگری دارند این مبحث شاملشون میشه(یکی از دوستان در همین فروم بود وهست که مدرک مهندسی شیمی داشت قطعا واسه ایشون مثل شما اولویت اولشون نیست)

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


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

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

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

eshpilen
پنج شنبه 13 آبان 1389, 23:31 عصر
همیشه باید دانشجو بود.
این راه پایانی نداره.
و هیچ راهی بهتر از این نیست!
میخوایم چطور از زندگیمون استفاده کنیم؟
چکار کنیم؟
به کجا برسیم؟
منکه در این جهان و آدمها چیزهای ارزشمند واقعی زیادی ندیدم. جهانی پر از ظواهر و دروغ و فریب و ارزشهای رنگارنگ اما سطحی و قلابی.
علم از متعالی ترین ماهیت هایی هست که انسان در این جهان مادی در اختیار داره.
تنها چیزی رو که برتر از علم میدونم، معنویته. ولی معنویت هم از یک جنبه خودش یک علم هست و علوم کلاسیک و معنویت بنظر من با هم رابطه های زیاد و عمیقی هم دارن.
بهرحال آدم یه استعداد و علاقهء ذاتی ای داره بی دلیل نیست و معمولا فقط روی اون میتونه بیشتر از چیزهای دیگه واقعا موفق و راضی باشه و احتمالا تقدیرش هم اینه که توی اون زمینه فعالیت کنه.

aminghaderi
پنج شنبه 13 آبان 1389, 23:39 عصر
هی eshpilen (http://barnamenevis.org/forum/member.php?u=148005) چه حوصله ای داری پسر!
یکم فکر ما پیرو پاتالا رو بکن ، اخه ما دیگه توان خودن این همه خط رو ندارم.:کف:

مزایای رشتهء برنامه نویسی

مزایاش خوب ؛ معمولا بچه های برنامه نویس هموشون علاقه مند به برنامه نویسی هستن ، یعنی عملا کار نمی کنند ، تفریح می کنند ، البته بعضی اوقات اینقدر ازشون تفریح می کشند که دوست دارند از محل کارشون فرار کنند.
به نظر من غیر از یه چند سالی بی پولی در ابتدای کار (که اون هم یکم طبیعی هست (به گفته بزرگترها)) و یکم تضعیف رابطه اجتماعی ، برای کسایی که علاقه دارند مشکلی دیگری پیش نمی یاره.
اما اون هایی که علاقه ندارند (از کد نویسی متنفر هستند) خوب این رشته مزایایی هم که نداره ، باعث زجر اونها خواهد شد ، و اخر هم کارشون رو عوض می کنند. (یه رفیقی دارم که با من نرم افزار می خوند دانشگاه ، با این که از رشته ما بدش می اومد حالا باز قصد ادامه تحصیل هم داره! (متاسفانه اجبار خانواده!!)).

returnx
پنج شنبه 13 آبان 1389, 23:46 عصر
تقریبا هیچ رشته ای اینقدر جذاب و بدون محدودیت نیست. ضمن اینکه خیلی هم شکوفا شده و بهش نیاز هست و میتونه درآمدزا هم باشه.
در جذاب بودنش که هیچ حرفی نیست چون وقتی که با تیکه کد های کوچیک برنامه های با حال مینویسیم خیلی حال میکنیم اما در درامدزا بودنش....
من تا حالا از برنامه نویسی پولی در نیاوردم ولی چون عاشقشم دارم ادامه میدم و همیشه خودم گول میزنم و به خودم میگم من در حال پیشرفتم پس نباید انتظار داشته باشم که پول در بیارم و به خودم میگم باید تلاش کنم چیز های بیشتری یاد بگیرم...
ولی وقتی وضیعت کسانی که از من بهترند رو میبینم ، به این نتیجه میرسم که حتی اگه پیشرفتم کنم تو ایران از برنامه نویسی نمیشه انتظار درامد زایی بالا و مداوم داشت :افسرده:

JaguarXF
جمعه 14 آبان 1389, 06:31 صبح
این ها نشد حرف!
هرموقع از پول کنسرت و شراب و بنزین گرفته تا پول قسط خونه و هزینه های مهدکودک بچه و ... رو خواستی همش رو خودت بدی و تنها منبع درآمدت هم شغل خودت و خانمت بود : اونموقع بیا یک بار دیگه این حرفهای مربوط به درآمد برنامه نویسی و غیره که نوشتی رو یک بار دیگه بخون . ببینم بازم سر حرفهات هستی یا نه .

Alireza_Salehi
جمعه 14 آبان 1389, 09:17 صبح
همیشه باید دانشجو بود.
این راه پایانی نداره.
و هیچ راهی بهتر از این نیست!
میخوایم چطور از زندگیمون استفاده کنیم؟
چکار کنیم؟
به کجا برسیم؟
منکه در این جهان و آدمها چیزهای ارزشمند واقعی زیادی ندیدم. جهانی پر از ظواهر و دروغ و فریب و ارزشهای رنگارنگ اما سطحی و قلابی.
علم از متعالی ترین ماهیت هایی هست که انسان در این جهان مادی در اختیار داره.
تنها چیزی رو که برتر از علم میدونم، معنویته. ولی معنویت هم از یک جنبه خودش یک علم هست و علوم کلاسیک و معنویت بنظر من با هم رابطه های زیاد و عمیقی هم دارن.
بهرحال آدم یه استعداد و علاقهء ذاتی ای داره بی دلیل نیست و معمولا فقط روی اون میتونه بیشتر از چیزهای دیگه واقعا موفق و راضی باشه و احتمالا تقدیرش هم اینه که توی اون زمینه فعالیت کنه.
برنامه نویسی هم مثل کارهای دیگه است، هیچ فرقی نداره یک سری آدم ها بسته به شرایط رشد و امانات و علاقه ای که دارند بیشتر جذب این حرفه می شوند. هیچ چیز خاصی تو این رشت هنیست یک شغله مثل مشاغل دیگه، ممکنه یه روز خوب ازش پول دربیاد یه روز بد ، کلی هم محدودیت داره....

این آزادی هم که میگید ما بعد این همه سال برنامه نویسی ندیدیم...

چون به صورت تفننی برنامه می نویسید بسیاری مسائل این حوزه رو اشراف ندارید و از این حرفها می زنید.

returnx
جمعه 14 آبان 1389, 09:33 صبح
هیچ چیز خاصی تو این رشت هنیست یک شغله مثل مشاغل دیگه، ممکنه یه روز خوب ازش پول دربیاد یه روز بد ، کلی هم محدودیت داره....

این شغل با مشاغل دیگه بسیار فرق داره و عمده ی فرق این شغل با مشاغل دیگه این که در اکثر مشاغل ها فعالیت بدنی است ولی در این رشته فعالیت فکری است...
تنها محدودیتی هم که داره ، یک مغز پویا و با قدرت تحلیل بالاست...

eshpilen
جمعه 14 آبان 1389, 10:57 صبح
مزایاش خوب ؛ معمولا بچه های برنامه نویس هموشون علاقه مند به برنامه نویسی هستن ، یعنی عملا کار نمی کنند ، تفریح می کنند ، البته بعضی اوقات اینقدر ازشون تفریح می کشند که دوست دارند از محل کارشون فرار کنند.
استثمار کردن ویژهء برنامه نویسی نیست و در تقریبا هر شغل و فعالیتی وجود داره و به شکلهای مختلف میتونه بروز پیدا کنه.
این به خود آدم و شرایط اطرافش برمیگرده که این مسئله براش رخ بده یا نه و تا چه حد و چطور باهاش مقابله بکنه.



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


این ها نشد حرف!
هرموقع از پول کنسرت و شراب و بنزین گرفته تا پول قسط خونه و هزینه های مهدکودک بچه و ... رو خواستی همش رو خودت بدی و تنها منبع درآمدت هم شغل خودت و خانمت بود : اونموقع بیا یک بار دیگه این حرفهای مربوط به درآمد برنامه نویسی و غیره که نوشتی رو یک بار دیگه بخون . ببینم بازم سر حرفهات هستی یا نه .چرا اتفاقا بنظر من حرفهای خوبی هست که باید حق مطلب درموردشون ادا میشد.
چرا وقتی حرف عشق و علاقه و بحث های محض علمی و فلسفی میشه میگن اینها نشد حرف و روش اسم خیال پردازی میذارن؟
درحالیکه در تاریخ و همین الان انگیزه و منبع لذت و پیشرفت خیلی ها و همینطور بشریت، همینها بودن و هستن.
آیا دانشمندان بزرگ همه انگیزهء اولشون پول بوده؟ آیا همشون خیلی پولدار بودن؟ آیا شاکی بودن و پشیمون شدن که دنبال عشقشون رفتن؟
آیا اونها به بشریت و من و شما سودهای بزرگ نرسوندن و باعث نشدن بشریت امروز اینهمه دستاورد رو داشته باشه؟
بله برای عوام و آدمهایی که این عشق و بینش رو ندارن شاید این حرفا بیهوده بنظر بیاد. اما کسی نمیتونه این ادعا رو ثابت کنه و بگه نمیشه اینطور زندگی کرد. برای بعضی بهرحال این امکان وجود داره. و من فکر میکنم هرکسی هم برای آرمان و تعالی ای که میخواد باید مقداری هزینه کنه. حالا یکسری افراد اگر اینطور فکر نمیکنن و این علاقه و انگیزه رو ندارن یا اصلا شرایطش رو ندارن، من حرفی ندارم، این افراد و یا جبر شرایط هم وجود دارن، اما این موارد به هیچ وجه همگانی و مطلق نیستن.
بعضی ها شاید شرایط محیطی و پشتوانهء مالی ارثی یا اکتسابی کافی برای پرداختن به این مسائل داشته باشن که بتونن بیشتر به این مسائل بپردازن. منم تاحدی جزو این افراد بودم ولی نه واقعا زیاد.
خب مزایای برنامه نویسی برای من وجود داشته و علاقهء لازم رو هم داشتم. بعکس یکسری افراد هستن که حتی از اولش ثروتمند هستن و نیاز مالی ندارن، اما هیچوقت دنبال این حرفا نمیرن. از طرف دیگه در اقتصادهای ضعیف کشورهایی مثل ما قبول دارم که خیلی ها شرایط پرداختن به مسائل متعالی تر رو ندارن و نمیتونن در پله های هرم مازلو بالاتر برن. ولی این مسئله کم و بیش نسبی هست و غیر از شرایط و پله های قبلی هرم، به خصوصیات خود فرد هم برمیگرده.
من فکر میکنم آدمهایی که فرصت و شرایط و خصوصیاتش رو دارن باید سعی کنن بسوی تعالی برن که به این وسیله به خودشون و بشریت هم کمک کنن. بهرحال این یه چیز ذاتی هم هست و میتونم بگم درمورد خودم یک گرایش شدید طبیعی بوده و هنوز هم اگر به گذشته برگردم، هیچ راه دیگری جز این رو انتخاب نمیکنم و پشیمون نیستم؛ باوجود اینکه بعضی چیزهای بزرگ توی زندگی رو به این خاطر کنار گذاشتم و شاید برای همیشه از دست داده باشم. مثلا همین مسئلهء ازدواج و یک زندگی عادی که شما میفرمایید. هیچوقت براش برنامه ریزی نکردم و برنامه ای ندارم (قبال توجهتون که بنده 30 سالم هست) و درواقع تا اطلاع ثانوی ازش صرفنظر کردم و این ممکنه تا پایان عمرم ادامه داشته باشه. به همین علت استدلال شما درمورد بنده کارا نیست، چون فرضهای اولیهء اون درمورد افرادی مثل بنده به هیچ وجه مصداق پیدا نمیکنن. من یک زندگی به همین صورتی رو که دارم و لذت و قدرت علم رو به یک زندگی عادی استاندارد ولو با زیباترین و بهترین زن دنیا ترجیح میدم.
من اصلا قصد نداشتم این حرفا رو برای آدمهایی بزنم که هیچ نشانه ای از علاقه و درک و شرایط و خصوصیات شخصیتی مورد نیاز در وجود اونها دیده نمیشه. اما فکر کردم کم و بیش افرادی هستن که حداقل تاحدی این حرفها رو بفهمن و براشون ارزش داشته باشه.
اینطور افراد در دنیا کم هم نیستن. بعضی ها در درجهء قویتر و کاملتری از اون هستن، مثل ریچارد استالمن بنیانگذار و رهبر جنبش نرم افزار آزاد که حتی فرصت های شغلی و درآمد زیاد رو براحتی برای آزادی و همکاری و آرمانهای اخلاقی و فلسفی رها میکنه، و بعضی دیگه در درجات و نمودهای نسبی، مثل خیلی افراد و شرکتهایی که اینهمه فعالیت و دستاورد در تولید نرم افزارهای آزاد و بازمتن دارن. البته میشه گفت بعضا از این فعالیت میشه کم و بیش درآمد هم داشت، اما بنظرم در بیشتر موارد فرصتهای شغلی و درآمد حاصله از نرم افزارهای انحصاری بیشتر هست. پس اونی که به سمت بازمتن و نرم افزار آزاد میره، عشق و هدف اصلی دیگری (هم) داره.
پس شما نمیتونید اینطور افراد وجود ندارن و از گشنگی مردن! خیر اینطور نیست.
ولی احتمالا خیلی از این افراد زندگی عادی استانداردی که مد نظر شما هست رو ندارن. بهرحال این انتخاب شخصی اونها بوده که بر اساس شرایط و خصوصیات و علاقه های شخصی خودشون انتخابش کردن و شما نمیتونید بگید اشتباه کردن و راه و روش اونها از راه و روش مورد نظر شما کم ارزش تر هست.
صحبتهای من همونقدر مهم و مشروع و ارزشمند هستن، که صحبت های شما هست.
منتها هرکدوم برای یک دسته.
اگر بشه هردو رو باهم داشت هم که دیگه خیلی خوبه.
ولی خیلی وقتها ممکن نیست بشه همه چیز رو با هم داشت.

eshpilen
جمعه 14 آبان 1389, 11:32 صبح
برنامه نویسی هم مثل کارهای دیگه است، هیچ فرقی نداره یک سری آدم ها بسته به شرایط رشد و امانات و علاقه ای که دارند بیشتر جذب این حرفه می شوند. هیچ چیز خاصی تو این رشت هنیست یک شغله مثل مشاغل دیگه، ممکنه یه روز خوب ازش پول دربیاد یه روز بد ، کلی هم محدودیت داره....

این آزادی هم که میگید ما بعد این همه سال برنامه نویسی ندیدیم...

چون به صورت تفننی برنامه می نویسید بسیاری مسائل این حوزه رو اشراف ندارید و از این حرفها می زنید.
تفاوت برنامه نویسی و مزایای بزرگ و استثنایی اون رو در پستهای قبلی گفتم که اگر خوب بخونید متوجه میشید.
درمورد آزادی و معنا و مزایا و عملی بودنش هم باز در پست قبلی توضیحات کافی دادم. این آزادی عملا وجود داره، محقق شده، و دستاوردهای بزرگی هم داشته، و افراد زیادی در این زمینه فعالیت میکنن و بهش عشق میورزن و ازش لذت میبرن و پیشرفت میکنن. در مورد این دیدگاهها احتمالا خوندن مقالات مربوط به فلسفه و جنبش نرم افزار آزاد مفید باشه که میتونید پاره ای از اونها رو که بنده ترجمه کردم از طریق این لینک (http://barnamenevis.org/forum/attachment.php?attachmentid=52182&d=1278101404) دریافت کنید.
حالا اینکه شما میگید ندیدید بفرمایید دقیقا منظورتون چیه؟ چی رو باید ببینید و چرا ندیدید؟

برنامه نویسی رشتهء بسیار استثنایی ای هست. بعلت اینکه در اون محدودیت های فیزیکی برای تحقق فکر و ایده بصورت عملی وجود نداره و امکانات یادگیری و پیاده سازی تقریبا همه چیز، در دسترس همگان هست. درحالیکه در رشته های دیگه امکان یادگیری و پیاده سازی خیلی چیزها در دسترس همگانی نیست. در خیلی علوم و فناوریها، دانش و فناوریهای انحصاری و محرمانهء بیشتری وجود دارن (بحدی که برای کار در سطوح بالا و تحقق عملی هرچیزی نیاز هست)، و گذشته از اون و مسئلهء مهمتر و بزرگتر اینکه، پیاده سازی و حتی تست خیلی ایده ها، بدون امکانات خاص و هزینه های سنگین که در دسترسی افراد عادی نیست، امکان نداره.
در جایی میخوندم که اگر برنامه ها رو با دیگر ماشین های ساخت بشر مقایسه کنیم، بزرگترین و پیچیده ترین ماشین ها هستن که پیاده سازی اونها در زمینه های دیگر هرگز ممکن نیست. ماشینهایی که از میلیونها قطعه و سیستم و ایده و ابتکار و اختراع ایجاد شدن. در ماشین هایی که ماهیت فیزیکی دارن، ما با محدودیت های بسیار زیادی مثل حجم، مصرف مواد اولیه، زمان و کار زیاد تولید و تکثیر اونها، فرسودگی، مصرف انرژی عظیم برای تولید و کار کردن اونها، و خیلی مسائل ریز و درشت دیگه سر و کار داریم که باعث میشن طراحی و پیاده سازی این ماشین ها در عمل کار بسیار دشوارتر و محدودتری باشه که بوجود آمدن و عملی شدن ایده های کارا رو که در حد برنامه های بزرگ امروزی بزرگ و پیچیده باشن، غیرممکن میکنه و با بزرگ و پیچیده شدن این ایده ها، تست و عملی کردن اونها به سرعت برای بیشتر افراد منفرد و عموم، بسیار دشوار و اغلب غیرممکن میشه.
بهرحال در برنامه نویسی ما سرعت و راحتی خیلی زیادتری برای پیاده سازی هرچیزی داریم و تکثیر و توزیع برنامه هم که نوعی از اطلاعات هستن توسط رایانه و اینترنت بسیار ساده تر و سریعتر و تقریبا بدون هزینه هست.
در هیچ رشته ای شما چنین خواص و مزایای استثنایی ای رو ندارید.
مرز میان تئوری و عمل در رشتهء ما چقدر هست؟
تولید و تکثیر و توزیع در کدام رشته اینقدر در دسترسی همگانی و بدون محدودیت و هزینه های بزرگ هست؟
شما در یک رایانه میتونید خیلی ابزارها و کاربردها رو پیاده سازی کنید. مثلا یک نرم افزار Media Player میسازید که فلان شکل باشه و فلان امکانات رو داشته باشه و حتی از طریق شبکه و اینترنت هم کنترلش کنید و غیره. پیاده سازی اینها در محیطی غیر از رایانه و بصورت برنامه، آیا مثلا در یک پخش کنندهء صوتی و تصویری سخت افزاری الکترونیکی به این راحتی هست؟! اصلا قابل مقایسه نیست. و برای بیشتر افراد تحقق چنین چیزی تقریبا غیرممکن هست. این تازه درحالی هست که الکترونیک خودش یکی از بهترین و قویترین رشته ها در زمینهء طراحی قابلیت های ناب و استثنایی و عملی کردن اونها هست. و همین الکترونیک به رایانه و برنامه نویسی منجر شد؛ درواقع تکامل و جهش و ایدهء ناب بعد از کاربردهای الکترونیک سخت افزاری، ساختن ماشین های برنامه پذیر بود که وقتی با شبکه و اینترنت هم ترکیب شد، تبدیل به معجزه ای در تاریخ بشریت شد که خیلی از آرمانهای بشر رو که تا پیش از اون حتی شاید به خیال هم نمیرسیدن، محقق کرد. یک آرمان شهر اطلاعاتی. قابلیت تولید، همکاری و تکثیر و بکارگیری در مقیاس جهانی برای تقریبا تمامی افراد، بدون محدودیت های فیزیکی بزرگ. بدون نیاز به امکانات خاص و گران قیمت و انحصاری صنعتی، بدون هزینه های سنگین و نیاز به سرمایه گذاری و قرارداد بستن با صنایع و تجارتمردان. در برنامه نویسی شما اگر دانش و پشتکار لازم رو داشته باشید میتونید تقریبا هرچیزی رو از طراحی و ساخت هستهء سیستم عامل تا برنامه های جذاب کاربردی و تعامل خودکار اونها با تمامی جهان رو یاد بگیرید و خودتون به تنهایی انجام بدید. البته بعضی کارها مثل تهیهء یک سیستم عامل واقعی و کامل، برای یک فرد به تنهایی بیش از حد بزرگ هست. ولی خوبیش اینه که این کارها رو هم میشه بصورت تیمی با افرادی در سراسر جهان بدون محدودیت انجام داد. هستهء سیستم عامل گنو/لینوکس و بقیهء بخشهای اون کم و بیش به همین روش توسعه داده شد.
تنها در برنامه نویسی هست که شما میتونید با افرادی در سراسر جهان بصورت مشترک یک ایده رو پیاده سازی کنید و کار عملی همدیگر رو با هم براحتی مبادله و ترکیب کنید. بخاطر همین خصوصیت و عدم محدودیت بود که تولید نرم افزار به روش تیمی با مقیاس جهانی و بخصوص نرم افزارهای آزاد/بازمتن خیلی فراگیر و موفق شد.
در هیچ رشتهء دیگری این کار ممکن نیست. مگر اینکه محصول نهایی اون رشته مثل برنامه نویسی بصورت اطلاعات باشه که قابلیت ترکیب شدن رو هم داشته باشه.
لینوکس چطور توسعه پیدا کرد؟ نرم افزارهای آزاد/بازمتن چطور بصورت تصاعدی رشد کرد و به اینجا رسید؟ آیا با همکاری و یکپارچه کردن سریع و راحت دستاوردهای تمامی افراد در سراسر جهان نبود؟ ما با حرکتی مواجه هستیم که بدون هیچ پشتوانهء خاص اولیه از جانب صنایع و تجارت های بزرگ و حکومتها شروع شد و هنوز هم بخش بزرگی از منابع اون از طریق حرکتهای خودجوش حداقل بدون اون حدی از سرمایه ها و امکانات و پشتوانه ها مالی و قانونی بزرگی که شرکتهای تجاری و صنایع بزرگ در اختیار دارن تامین میشه.
اینها تماما خواص استثنایی و بسیار بزرگ و مثبت کار برنامه نویسی هستن.
چطور میفرمایید این رشته با رشته های دیگه فرقی نداره؟
اگر منظورتون از نظر درآمد و بعنوان یک شغل عادی باشه، من از اول هم این رو بعنوان خواص و مزایای استثنایی برنامه نویسی ذکر نکردم و در این مورد قبلا توضیح کافی دادم.
ما داریم درمورد چیزهای دیگری صحبت میکنیم که بقدر کافی استثنایی و بزرگ هستن و افراد زیادی بهشون علاقه دارن و ازشون بهره مند شدن و میشن، تا بشه درموردشون صحبت کرد.
من به علم علاقهء زیادی دارم. ولی هیچ رشته ای اینقدر قابلیت یادگیری و عملی سازی هرچیزی رو به این راحتی و سرعت به من نمیده.
مثلا اگر فیزیکدان بودم، آیا میتونستم براحتی هرچیزی رو تست و عملی بکنم؟ آیا میتونستم یک دستگاه بسیار پیشرفته رو بسازم و به تنهایی تولید و تکثیر و توزیع کنم؟
آیا میتونستم روی فیزیک اتمی متناسب با علاقه و ظرفیت خودم تحقیق کنم و هرچیزی رو در این زمینه آزمایش کنم و بسازم؟
نه واقعا من فکر نمیکنم برنامه نویسی یه رشته ای مثل رشته های دیگه باشه!
درسته تمام رشته های علمی لذت بخش هست و چیزهای زیادی برای یادگیری و ساختن، متناسب با علاقه ها و استعدادها و همت های مختلف، در خیلی زمینه ها وجود داره، اما در برنامه نویسی این قابلیت ها به درجهء بالای بسیار گسترده و مهم و مفید و جالبی رسیدن که در دسترسی همگانی قرار دارن.
من میتونم خیلی از ایده ها و برنامه های جالب و پیچیده رو که در مقیاس جهانی کار بکنن طراحی و براحتی تولید بکنم و تکثیر و توزیعش رو هم بصورت نامحدود خودم به تنهایی انجام بدم. این قابلیت در کدوم رشته و چطور هست؟
در خیلی رشته ها که اصولا شما نمیتونید بعنوان علاقه و پیشرفت یا تفریح شخصی دنبال هرچیزی برید چون نیاز به امکانات خاص و گران قیمت و هزینه های سنگین دارن که بصورت شخصی همش رو در اختیار ندارید. بخصوص که منابع زیردست شما توسط دیگران تامین شده باشه یا در جایی بعنوان وظیفه و شغل دارید کار میکنید که اون امکانات فقط برای کارها و تولیدات خاصی در اختیار دارید.

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

مصطفی ساتکی
جمعه 14 آبان 1389, 12:05 عصر
جناب eshpilen (http://www.barnamenevis.org/forum/member.php?u=148005) یه خورده متون رو فشرده تر بنویسید تا آدم پیاده هم بتونه این متن ها رو بخونه و نیازی به تاکسی نباشه.

نه واقعا من فکر نمیکنم برنامه نویسی یه رشته ای مثل رشته های دیگه باشه!شما سخت در اشتباه اید امروزه سخت افزاری که شما روش برنامه می نویسید نتیجه تلاش افراد غیر برنامه نویس بوده که روز به روز در حال پیشرفت.
شما بایستی یه خورده دیدتون وسیع تر کنید تو شرکت های بزرگ رشته های مختلف در حال تلاش هستند و برنامه نویسی هم همونطور.
اتفاقاً جناب Alireza_Salehi (http://www.barnamenevis.org/forum/member.php?u=33355) حرف درستی زد.
من عمده فعالیتم تو زمینه پردازش تصویر و بجای برق و مخابرات فعالیت زیادی در این زمینه انجام میدن مقاله و جورنال میدن و به همین ترتیب از مقالات دیگران مطالعه می کنند و reference شون قرار میدن.شما می فرماید که چی اون هیچ زحمتی نمی کشن و زحمت رو فقط برنامه نویسان می کشن.

چون به صورت تفننی برنامه می نویسید بسیاری مسائل این حوزه رو اشراف ندارید و از این حرفها می زنیدمن فکر کنم یک دلیلش این باشه و دلیل دیگر هم وابسته نبودن کارهاتون به رشته های دیگه اگه تو یکی از رشته های hybrid فعالیت داشتید حتماً طرز تفکرتون یک مقدار عوض میشد.
موفق باشید.

eshpilen
جمعه 14 آبان 1389, 12:33 عصر
شما سخت در اشتباه اید امروزه سخت افزاری که شما روش برنامه می نویسید نتیجه تلاش افراد غیر برنامه نویس بوده که روز به روز در حال پیشرفت.خب من به سخت افزار چکار داشتم؟
بهرحال برنامه نویسی خودش یک تخصص تمام عیار و بقدر کافی گسترده و پیچیده و جذاب و مفید هست که بتونیم اون رو یک زمینهء تخصصی و حرفه ای کامل فرض کنیم.
و خواص ممکن فعالیت در زمینهء سخت افزار و نرم افزار با هم متفاوت هستن.
بطور مثال در زمینهء نرم افزار بوجود آمدن نرم افزار آزاد ممکن و مفید بود و بوجود آمد، اما در سخت افزار این مسئله هرگز به این راحتی ممکن نیست و بوجود نیامد، چون خواص و نیازها و محدودیت های خاصی داره که در برنامه نویسی نیستن یا خیلی کمتر هستن.
من نگفتم که رشته های دیگه هم همینطور هستن و میتونن اینطور باشن. صحبت من دربارهء برنامه نویسی به عنوان یک رشته هست. صحبت کردن از سخت افزار چه ارتباطی به این بحث بنده درمورد مزایای برنامه نویسی داشت؟
یکبار دیگه نقل قولی رو هم که شما در پاسخش این مطلب رو گفتید میارم و خودتون بگید چه ارتباطی داره و چطور حرف من با توسل به سخت افزار که یک رشتهء دیگه هست رد میشه:
«نه واقعا من فکر نمیکنم برنامه نویسی یه رشته ای مثل رشته های دیگه باشه!»
سخت افزار یک رشته هست و نرم افزار یک رشتهء دیگر.
فعالیت عملی در سخت افزار یک امکانات و هزینه ای داره که فعالیت در نرم افزار اون امکانات و هزینه ها رو نیاز نداره و خیلی محدودیت ها براش وجود نداره.
بهرحال ما نانی هم که میخوریم و زنده میمونیم و انرژی داریم تا برنامه مینویسیم یکی تولید کرده، ولی این چه ربطی به ادعای بنده درمورد خواص استثنایی و مزایای برنامه نویسی داره و چطور اونها رو رد میکنه؟!


شما بایستی یه خورده دیدتون وسیع تر کنید تو شرکت های بزرگ رشته های مختلف در حال تلاش هستند و برنامه نویسی هم همونطور.منظور؟
مگه من چیزی خلاف این رو گفتم؟
این یک مسئله هست و خواص استثنایی نرم افزار که امکانهای زیادی رو در اختیار بشریت و عموم میذاره که رشته های دیگه دراختیار عموم نمیذارن یک مسئلهء دیگه که با این استدلال که رشته های دیگه هم فعالیت دارن و تلاش میکنن ارتباط خاصی نداره بنظرم! بنظر شما چه چیزی با این حرف اثبات یا رد میشه و چطوری؟
من نگفتم رشته های دیگه خوب نیستن. ممکنه کسی به رشتهء دیگه ای بیشتر علاقه داشته باشه. اما در برنامه نویسی، دست ما برای یادگیری و واقعیت بخشیدن ایده ها جالب و بزرگ خیلی بازتر هست. این مسئله مثل انفجار سریع و عظیم اطلاعات هست که بخاطر همین خصوصیت چیزهایی از جنس اطلاعات بوجود آمد. اگر رشته های دیگه با سرعتی که آرمان شهر اطلاعاتی پیشرفت کرد پیشرفت میکردن، الان بشریت باید پیشرفت سال 2100 رو در اون زمینه ها میداشت.
در خیلی رشته ها اگر دقت کنید پیشرفت های بزرگ و اساسی زیادی از زمان ده سال و حتی 50 سال قبل وجود ندارن، یا اینطور بگیم که درحد پیشرفت رایانه و اطلاعات و برنامه نویسی نبودن، و پیشرفتها بیشتر در زمینهء الکترونیک و رایانه و برنامه نویسی بودن که خود اینها باعث تسریع در پیشرفت رشته های دیگه هم شدن. بطور مثال ابررایانه ها و حتی رایانه های معمولی تونستن به کمک خیلی رشته ها بیان و چیزهایی رو شبیه سازی یا محاسبه کنن که قبلا موانع پیشرفت بودن؛ همینطور امکان تعامل دانشمندان در سراسر دنیا رو ممکن ساختن.
بهرحال با این ادعا تا چه حد موافق باشید یا نباشید، بنده ادعا نکردم که رشته های دیگه مفید و ارزشمند و ضروری نیستن. فقط میگم افراد منفرد در برنامه نویسی دستشون خیلی بازتر هست برای یادگیری و تولید و تکثیر و توزیع تا رشته های دیگه و خوبی این رشته اینه که از محدودیت های فیزیکی تاحد زیادی مبرا هست (منظورم چیزهایی که رسما در حیطهء این رشته قرار میگیرن هست، نه چیز دیگه مثل طراحی و تولید سخت افزار). اینم که کاملا روشنه؟ نیست؟ در کدوم رشته شما میتونید محصولات نهایی اون رشته رو یک نفری به این راحتی و سرعت خودتون تولید و تکثیر و توزیع کنید بدون اینکه هزینهء چندانی براتون داشته باشه؟

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


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

eshpilen
جمعه 14 آبان 1389, 13:17 عصر
من نمیدونم چرا صحبت از برنامه نویسی و خواص و مزایای مشهود اون میکنیم، دوستان یه چیز دیگه میگن که ربط خاصی نداره!
انگار من اینجا اومدم بگم رشته های دیگه بدرد نمیخورن و زحمت نمیکشن! آخه کجا چنین حرفی زدم؟! این ادعا فقط یه برداشت شخصی افراد با ذهنیت خاصی بود که سندی قاطعی برای اون در نوشته های من نیست.
بدیهی هست که همهء رشته ها نیاز هستن و مفید و ضروری اند. از اونهایی که نان و خوراک شما رو تامین میکنن تا نیروگاه برق که الان کامپیوتر من باهاش کار میکنه و بخاری گازی و منبع تولید گازش که اتاق منو گرم میکنه که بهم اجازه میده در راحتی و آرامش در زمینهء برنامه نویسی فعالیت کنم و این مطالب رو بنویسم و پست کنم.
و همین سخت افزار و حتی مواد و فناوری پلاستیک و مانیتوری که رایانه ازش ساخته میشه که مدام هم پیشرفت میکنن و امکانات بیشتری رو در دسترس برنامه نویسان هم قرار میدن.
اینا کاملا بدیهی هست!! اما واقعا من متوجه نشدم کجا من خلاف این بدیهیات را ادعا کردم و چه ربطی به بحث ما داره :متفکر:
بحث خواص و مزایای استثنایی برنامه نویسی بود.
خب بدیهی هست که بعضی رشته ها و حتی گرایش ها در رشته ها، مزایا و جذابیت های عمومی ای دارن که باعث میشه بعضی رشته ها و گرایش های دیگه حتی گاهی با کمبود نیروی انسانی مواجه بشن. البته من فکر میکم این مسئله در موارد کمی رخ میده. چون همه جور افراد با همه جور علاقه و پشتکار و استعدادی هست و هیچ رشته ای سراسر مزیت نیست و فرصتهای کاری مختلفی وجود دارن.
مثلا در همین رشتهء برنامه نویسی هم میبینیم که عیبش در نظر خیلی افراد سخت و طولانی بودن راهش و درمقابل درآمد و تضمین شغلی کافی نداشتن (حداقل در کشور ما) و تغییرات وسیع و سریعش هست. اما بنده خواستم مزایا و خواص استثنایی این رشته رو هم مطرح کنم.

در همین برنامه نویسی هم چند وقت پیش مقاله ای رو در سایت اسلش دات میخوندم که از کمبود نیروی انسانی برای توسعهء هستهء سیستم عامل GNU/Linux صحبت کرده بود. یک علتی که خیلی ها برای کمبود این نیروی انسانی ذکر کرده بودن و بنظر منم قانع کننده و واقعی میاد این بود که امروزه برنامه نویسی اپلیکیشن خیلی گسترده و راحت و جذاب شده و درآمد خوبی هم داره و به همین دلیل افراد معدودی هستن که واقعا ترجیح بدن روی کدنویسی خشک و سخت هستهء سیستم عامل کار کنن.
خب این طبیعی هست و یک واقعیت که اگر واقعا مشکل جدی ایجاد کنه بشریت میتونه برای تدبیر کنه و راهکاری بیاندیشه. مثلا شاید حقوق و امتیاز ویژه برای این کار اختصاص بدن.
اما این مشکل دلیل نمیشه ما بگیم چنین واقعیتی وجود نداره! مسلما برنامه نویسی اپلیکیشن جذابیت و مزایای بیشتری برای عموم داره که به برنامه نویسی سیستمی و بخصوص هستهء سیستم عامل ترجیحش میدن. طرف با برنامه نویسی هسته نهایتش چیزی درست میکنه که تازه پلتفرم اپلیکیشن هایی هست که دیگران مینویسن و حالش رو میبرن و کارهای جالب میکنن، اما کسی در هسته جذابیت و تفریح و کاربرد عملی خاصی نمیبینه و خود اون برنامه نویس هسته هم احتمالا برنامه نویسی اپلیکیشن درست و حسابی بلد نیست یا وقت نمیکنه اپلیکیشن های جالب و گسترده ای رو طراحی کنه چون کارش بیشتر روی هسته هست و شاید خیلی هم دلش بخواد که برنامه نویسی اپلیکیشن (هم) انجام بده.
و اینکه اپلیکیشن نویسی اینقدر جذاب شده و مزایا داره، عیب که نیست! چیز بدی که نیست! یک پیشرفت و فایده هست که به خودی خودش نه دروغه و نه مضر. اینکه از برنامه نویسی هسته مفرح تر و به کاربردهای عملی کاربران نهایی نزدیکتر هست که دروغ و عیب نیست!
اینکه دوستان درمورد این بحث و ادعاهای من اینطور برخورد میکنن، مثل اینه که بگیم این حرف هم که برنامه نویسی اپلیکیشن برای عموم جذابیت و مزایای بیشتری داره، یا اینکه پیشرفتش از برنامه نویسی هسته بیشتر و سریعتر بوده، لزوما نادرسته.
خب فیلدهای علمی و کاری با هم تفاوت دارن. فکر میکنم این بدیهی باشه.
در بعضی زمینه ها پیشرفت سریعتر هست. نتایج جذاب تر هست. امکانات بیشتری در دسترسی عموم هست و غیره.
اما در عین حال تمام رشته ها نیاز هستن و ضروری هستن.
اونی که الان میره بخاطر نیاز بشریت، و نه فقط علاقه و منفعت شخصی، روی هسته کار میکنه یک نوع فداکاری هم بخاطر بشریت کرده. و همه از نتیجهء کارش بهره مند میشن و اگر این افراد نباشن، کار بقیه هم لنگ میمونه یا امکاناتشون پیشرفتی رو که میتونست داشته باشه نخواهد داشت.
تقریبا تمام رشته ها خوب و مفید و ضروری هستن.
اما درجهء پیشرفت و جذابیت همهء اونها با هم یکی نیست.
امکانهایی که در هر رشته ای در دسترسی عمومی هست یکی نیستن.

من خودم بغیر از برنامه نویسی در خیلی زمینه های دیگه هم مطالعهء قابل توجهی داشتم. از مواد منفجره و فیزیک و بمب اتمی گرفته تا حشره شناسی و گیاه شناسی و شیمی. چون واقعا به علم و توانایی (دانستن و توانستن) علاقه دارم و رک بگم شیفتهء قدرت هستم. اما تمام این رشته ها اینقدر راحت چنین توانایی های وسیع و جذابی رو که برنامه نویسی بهم میدن بهم نمیدن. مثلا من آیا میتونم به این راحتی با هزینه ای اینقدر ناچیز، در زمینه های دیگه مثل شیمی، مواد منفجره، فیزیک هسته ای و غیره کار کنم و اصلا بعضی از اینا در زندگی روزمرهء من اینقدر کاربرد دارن؟ درسته برای بشریت ضروری هستن. مثلا مواد منفجره غیر از کاربردهای نظامی، برای استخراج سنگهای معدنی و خیلی کارهای مفید دیگه هم بکار میره، اما برای من بعنوان یک فرد تنها اغلب نه قابل دسترسی نامحدود هست و نه کاربرد روزمره و جذابی داره. تروریست یا احمق و دیوانه هم نیستم که الکی بخوام یه چیزی رو بترکونم و حال کنم!!
فرض کنید مثلا مهندس مکانیک بودم و یک موتور درونسوز جدید اختراع میکردم یا مثلا میخواستم تغییرات و آزمایشات پیشرفته ای روی انواع موتورهای موجود انجام بدم. اینجا با اینکه کارم بیشتر عملی و کاربردی هست، اما با محدودیت های جدی در زمینهء امکانات صنعتی و تخصصی خاص و گران قیمت و هزینه و زمان قابل توجه برای انجام عملی کارهام نیاز خواهم داشت.

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

eshpilen
یک شنبه 16 آبان 1389, 12:26 عصر
البته اينكه من گفتم برنامه نويسي هم تفريحه و هم كار منظورم اين نبود كه آدم همزمان كه كار ميكنه لزوما براش مفرح هم هست! منظورم اين بود كه كارهاي شخصي خودمون و تفريح هم باهاش در هر سطحي بخوايم ميتونيم انجام بديم و اين فعاليت هاي شخصي نسبت به رشته هاي ديگه خيلي در دسترس تر و گسترده تر و سطح بالاتر هست و هزينهء ناچيزي داره.
مسلمه آدم روي يه پروژهء شغلي كه بهش علاقه اي نداره كار ميكنه لذتي نميبره يا لذت چندان نميبره. يا اينكه زيادي كار كنه و استثمارش كنن براش لذتي نداره كه دردناك هم هست و براي سلامتي روح و جسم هم ضرر داره.

در هر شغلي، نه فقط برنامه نويسي، اگر آدم به كارش علاقه داشته باشه و تحت فشار و استثمار نباشه، مسلما از كارش كم و بيش لذت هم ميبره و براش تفريح هم هست؛ اما بهرحال برنامه نويسي يه خصوصيات تقريبا منحصر به فردي داره كه بنظر من مزاياي واقعا بزرگي هستن براي افراد علاقمند. خيلي رشته ها هست كه يه آدم بصورت شخصي و براي تفريح و دل خودش اينقدر دستش باز نيست، اينقدر همه چيز در تقريبا همه سطحي در دسترس، و عملي كردن چيزهايي كه دانشش رو داريم راحت و سريع و كم هزينه نيست. درحاليكه ما در برنامه نويسي امكانات بسيار گسترده اي كه راحت و سريع و كم هزينه هستن از مرحلهء يادگيري مبتدي تا سطوح بالا و در مرحلهء عمل و توليد و تكثير و توزيع دراختيار داريم. و حتي نرم افزارهاي آزاد زيادي كه از هستهء سيستم عامل و بوت كردن تا تقريبا همه جور زبان و ابزار و كامپوننت و برنامه هاي لازم براي تهيهء انواع برنامه هاي سيستمي تا اپليكيشن رو دربر ميگيرن بصورت رايگان در اختيار همگان هستن و لزوما مجبور نيستيم فقط به پلتفرم هاي تجاري و انحصاري و برنامه هاي گران قيمت وابسته باشيم. البته اين آزادي چشمگير و وجود انتخاب ديگر، دستاورد جنبش نرم افزار آزاد و بازمتن بوده.
البته شرط لازم استفاده از اين امكانات، اول سواد و علاقه و پشتكار خود فرد هست و اينكه حداقل فرصتي براي پرداختن به كارهاي شخصي و مورد علاقهء خودش هم داشته باشه.

خيلي رشته ها هستن كه آدم توش اينقدر امكان كار منفرد و دلخواه خودش رو نداره. حتي اگر وقتش رو داشته باشه. چون نياز به امكانات صنعتي و هزينه هاي سنگين دارن.
تازه رايانه و برنامه نويسي كه كاربردش روزمره و همه جايي هست، از خانگي تا صنايع پيشرفته. همه جا هست و همه جا باهاش ميشه هم كار جدي انجام داد و هم تفريح يا موارد شخصي.
كدوم رشته تمام اين خصوصيات رو با هم داره؟
تنها رشتهء غيرتئوريك بعد از برنامه نويسي كه مزاياي قابل توجهي شبيه اينها داشته باشه بنظر من رشتهء الكترونيك هست.

خيلي وقتها ميبيني طرف در فلان رشته و تخصص و صنعت پروفسوره، ولي بدون اينكه تحت استخدام يه شركت و كارخانه و مجموهء صنعتي و تامين هزينه توسط يه سرمايه داري باشه از خودش نميتونه هيچ كار انجام بده و آزادي و اختيار كامل داشته باشه روي هر چيزي كار و تحقيق كنه و هرچيزي رو بسازه. گذشته از اينكه اصلا تخصصش كاربرد روزمره و همه جايي نداره.

اين آزادي و امكان همگاني گسترده در پيشرفت و تحقق عملي چيزهايي كه ميخوايم، براي من خيلي جذابه و اون رو واقعا مهم و استثنايي ميبينم.

mahak006
یک شنبه 16 آبان 1389, 17:07 عصر
برنامه نویسی یه شغلیه که توش باید پاک بود و از ته دل کاری رو انجام داد . این طوریه که زندگی با اون سخت می چرجه . چون به خاطر پول کار نمی کنی . به خاطر وجدان کار می کنی و نتیجشم اینه که می تونی برنامه ای بسازی که مثل برنامه ی خیلیای دیگه که گروهی یا فردی ساختن ، جهانی بشه .
بالاخره چیز خوب سختی هایی هم داره .

eshpilen
یک شنبه 16 آبان 1389, 18:45 عصر
Top 50 jobs in America

1. Registered nurses: $52,330
2. Postsecondary teachers: $51,800
3. General and operations managers: $77,420
4. Elementary school teachers, except special education: $43,160
5. Accountants and auditors: $50,770
6. Business operation specialists, all others: $53,460
7. Computer software engineers, applications: $74,980
7. Maintenance and repair workers, general: $30,710
8. Carpenters: $34,900
10. Computer systems analysts: $66,460
9. Secondary school teachers, except special and vocational education: $45,650
12. Computer software engineers, systems software: $79,740
10. Physicians and surgeons: $145,600
14. Network systems and data communications analysts: $60,600
11. Automotive service technicians and mechanics: $32,450
12. Licensed practical and licensed vocational nurses: $33,970
13. Management analysts: $63,450
18. Computer support specialists: $40,430
14. Lawyers: $94,930
20. Network and computer systems administrators: $58,190
15. Police and sheriff's patrol officers: $45,210
16. Middle school teachers, except special and vocational education: $43,670
17. Plumbers, pipefitters, and steamfitters: $41,290
18. Financial managers: $81,880
19. Computer and information systems managers: $92,570
20. Sales representatives, services, all other: $47,000
21. Firefighters: $38,330
22. Dental hygienists: $58,350
23. Paralegals and legal assistants: $39,130
24. Sales managers: $84,220
25. Chief executives: $140,350
26. Self-enrichment education teachers: $30,880
27. Physical therapists: $60,180
28. Pharmacists: $84,900
29. Medical and health services managers: $67,430
30. Sales representatives, wholesale and manufacturing, technical and scientific products: $58,580
31. Employment, recruitment, and placement specialists: $41,190
32. Property, real estate, and community association managers: $39,980
33. Child, family, and school social workers: $34,820
34. Heating, air conditioning, and refrigeration mechanics and installers: $36,260
35. Real estate sales agents: $35,670
36. Special education teachers, preschool, kindergarten, and elementary school: $43,570
37. Legal secretaries: $36,720
38. Training and development specialists: $44,570
39. First-line supervisors/managers of housekeeping and janitorial workers: $29,510
40. Administrative services managers: $60,290
41. Public relations specialists: $43,830
42. Radiologic technologists and technicians: $43,350
43. Sales and related workers, all others: $31,380
44. Personal financial advisors: $62,700


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

JaguarXF
یک شنبه 16 آبان 1389, 19:46 عصر
آمار مالی فوق یا قدیمی هست یا منبع معتبری نبوده .
از کی تا حالا 30 هزار دلار در سال ساختن شده جزو 50 شغل برتر و ما خبر نداشتیم؟

eshpilen
یک شنبه 16 آبان 1389, 19:58 عصر
آمارش رو یه نفر در یک فروم دیگه در تاپیک مشابه (کپی همین تاپیک) گذاشته.
منبع هم گذاشته بود ولی ببخشید یادم رفت لینک منبع رو کپی کنم:
http://www.cnn.com/2007/US/Careers/01/31/cb.top.jobs/index.html

eshpilen
جمعه 21 آبان 1389, 11:31 صبح
تحولات مهمی که در تاریخ معاصر اتفاق افتادن که بدون اونها پیشرفت بشر خیلی کند میشد بنظر من اینها بودن: الکترونیک، رایانه، و نرم افزار آزاد/بازمتن!
چرا؟
چون بشر پس از کلی کشفیات و اختراعات مهم که هر روز یک نفر و حتی چند نفر از اینور و اونور جهان ثبت میکردن، به حدی رسیده بود که دیگه تقریبا چیزهای مهمی که کشف و اختراع اونها کار یکی دو نفر در مدت قابل قبولی باشه باقی نمونده بود!
دیگه بشر به مرزهایی رسیده بود که سر و کارش با اتم، ستاره ها و شرایط اولیه و تاریخ کهکشانها و انفجار بزرگ، تحلیل و دنبال کردن و کنترل نانو ثانیه ها، تحلیل و پیشبینی شرایط جوی که نیاز به مدلهای ریاضی بسیار پیچیده و پردازش حجم عظیم اطلاعات داره، فیزیک کوانتم و غیره و غیره افتاده بود و جبههء اصلی پیشروی علم به این قلمروها منتقل شده بود و مرزهای قبلی که عرض کردم پشت سر گذاشته شده بودن.
اما خواص و نیازهای این جبهه های جدید این هست که نیاز به دستگاههای بسیار دقیق و با ضریب اطمینان بالا و خطای بسیار کم و توان پردازش و محاسبهء حجم های عظیم اطلاعات در زمان کوتاه داره. دیگه بشر به تنهایی و بدون کمک قدرت و دقتی خیلی فراتر از مغز خودش در محاسبه و پردازش حجم عظیم اطلاعات، نمیتونست با سرعت لازم در این وادیها پیشرفت کنه. البته یک نیاز دیگر بشر هم در این وادی امکان تبادل سریع و کم هزینهء اطلاعات و امکان همکاری بدون محدودیت های مکانی و زمانی بین انسانها در سراسر زمین و کارهای تیمی بود که قدرتش رو دوچندان میکنه.
با پیشرفت علم الکترونیک اینها ممکن شد.
با اختراع و پیشرفت علم رایانه بازهم ممکن تر شد.
با پیشرفت برنامه نویسی، با ایجاد اینترنت، و با نرم افزار و ماشین هایی که بطور کامل قابل برنامه ریزی بودن این امر ممکن شد. خوبه بدونید که رایانه های اولیه همه کاره و بصورت کامل قابل برنامه ریزی نبودن و ابداع برنامه های ذخیره شده، یک پیشرفت اساسی در علم رایانه بود. البته امروزه ما به چیزی که براحتی قابل برنامه ریزی نباشه، معمولا رایانه نمیگیم. مثلا به یک ماشین حساب معمولی کامپیوتر نمیگیم. اما حتی اسم رایانه اینقدر اختصاصی نیست و به معنی محاسبه گر هست که این اسم میشه گفت از دوران رایانه های ابتدایی که برای محاسبات ریاضی ساخته شده بودن اومده.

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

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

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

راستی شاید بپرسید چرا من جنبش نرم افزار آزاد/بازمتن رو پیشرفت مهم دیگر و جزیی از این مجموعه علوم و فناوریهای اساسی میدونم.
خب زیاد پیچیده نیست.
اولا که این جنبش یک جنبش فلسفی و اخلاقی و انسان دوستانه و طرفدار منفعت کلیت اجتماع و حتی کل جهان و کشورها بدون هیچ تبعیضی هست و میتونیم بگیم وقتی پیشرفت و فناوری و قدرت بشر اینقدر زیاد شد، نیاز به تکمیل و نظارت این قدرت و امکانها توسط یک فلسفهء پیشرو و انسانی بروز هم بیشتر شد. در کنار هر علم و فناوری و قدرتی، اگر فلسفه ها و معیارهای اخلاقی پیشرو و بروز و توانا که جهت پیشرفت و کاربرد این قدرت ها رو کنترل نکنن وجود نداشته باشن، این خطری واقعی برای بشریت خواهد بود که در خوشبینانه ترین حالت، منجر به هدر رفتن منابع و بهینه نبودن جهت حرکت کاروان علم و فناوری خواهد شد و در بدبینانه ترین حالت میتونن به اختلافات طبقاتی و تفاوت قدرت شدید میان افراد جامعه و کشورهای مختلف و نیز «جنگ» و «نابودی بشر» منجر بشن.
یه زمانی بشر ادعا میکرد با پیشرفت علم مشکلات تمام بشریت رو حل میکنه و تمام دنیا پر از عدالت و رفاه میشه و بهشتی زمینی برای عموم مردم ساخته میشه. اما آیا اینطور شد؟ آیا میزان علم و فناوری و قدرت ما برای تحقق چنین چیزی هنوز هم کمه؟ واقعا چه حدی لازمه و چه وقت به اون میرسیم؟!
من فکر میکنم علت اصلی عدم تحقق این رویا، عدم پیشرفت هماهنگ فلسفه و اخلاق و انسانیت و نظامهای تکامل یافته و پیشروی اجتماعی بوده. اونقدری که علم بشر پیشرفت کرد، فلسفه و معنویت و اخلاق بشر هم ارتقا پیدا نکرد و بعکس در بعضی جنبه ها پسرفت هم حاصل شد.
فلسفه و جنبش نرم افزار آزاد، یکی از این نگرشهای جدید و بازپس دادن اختیار تعیین جهت و کاربرد علم و فناوری، به اخلاقیات و جامعه دوستی هست. این جنبش چیزی نیست که برای پیشرفت علم و فناوری به خودی خود و برای تجارت و ثروت به خودی خود، ارزشی قائل باشه و چیزی نیست که پیشرفت کور و تصادفی رو لزوما مفید بدونه. و شما در مقالات نرم افزار آزاد میبینید که بعضی چیزهای نوین رو که به عنوان پیشرفت فناوری معرفی میشن، مضر قلمداد میکنه و عدم پیاده سازی و کار روی اونها رو خواستار میشه. مثلا فناوریهایی که قدرت انحصاری رو در دست عده ای خاص قرار میدن، یا امکان کنترل و جاسوسی از مردم رو فراهم میکنن؛ گرچه این فناوریها کاربردهای مفید و مزایایی هم دارن، اما از دید فلسفهء نرم افزار آزاد که از اسمش معلومه طرفدار آزادی هست، معایب و خطرات این فناوریها بیشتر از مزایا و کاربردهای مشروع اونهاست.
خیلی از مردم الان عملا اینطور فکر نمیکنن و طور دیگری رفتار میکنن. یعنی اولویت اول اونها تولید ثروت، افزایش تجارت و قدرتش، و پیشرفت علم و فناوری به هر حدی در هر جهتی هست.
اونها به فلسفه و اخلاق و انتخاب بهینه توسط انسان اهمیت چندانی نمیدن و نتایج دراز مدت متفاوت رو درنظر نمیگیرن و اعتقاد دارن علم و فناوری و تجارت و حکومت بشریت بصورت طبیعی به پیش میره و نیازی به کنترل و محدود کردن و جهت دهی در هیچ زمینه ای نداره.

اهمیت دیگر نرم افزار آزاد، بخاطر حاصل شدن بهره گیری کامل از امکانات استثنایی فناوریهای قبلی یعنی رایانه و اینترنت و برنامه نویسی هست. میدونیم که تولید و تکثیر و توزیع اطلاعات و برنامه ها که نوعی از اطلاعات هستن، امروزه توسط پیشرفت این علوم و فناوریها عملا میتونن نامحدود باشن و بصورت کاملا توزیع شده و مشترک و بصورت رایگان یا با هزینهء ناچیز انجام بشن. حتی تولید اولیهء برنامه که پرهزینه ترین و طولانی ترین بخش کار هست، میتونه در دنیای فعلی با هزینهء بسیار کمتری با همکاری انسانها و به کمک پشتیبانی حکومتها، با هزینهء بسیار کمتری تولید بشه و بعد حاصل اون بجای اینکه در انحصار عدهء معدودی باشه که با هزینه های قابل توجهی که از هر نفر از هزاران و میلیونها و میلیاردها انسان استفاده کننده تنها بابت حق استفادهء محدود از نرم افزار دریافت میکنن ثروت ها و انحصارهای روز افزون پیدا میکنن، بصورت آزاد در اختیار تمامی انسانها قرار گرفته بشه. این نرم افزارهای آزاد لزوما کاملا رایگان نیستن (ولی طبیعتا میتونن خیلی ارزانتر از نرم افزارهای انحصاری تموم بشن) و مثلا میشه مبلغی رو از محل مالیاتی که از هر فرد به شکلی کسر میشه، بهشون اختصاص داد؛ اما باز هم ما بجای نرم افزار انحصاری ای که دیگران فقط حق کاربری محدود ازش رو دارن، نرم افزار آزاد رو در اختیار جامعه میذاریم. نرم افزاری که همراه با کدمنبع و اختیارات کامل به همه کس داده میشه و هرکسی بدون محدودیت میتونه طرز کارش رو مطالعه کنه، تغییرش بده و تکثیر و توزیعش کنه، و این برای پیشرفت علم و آزادی و دموکراسی و همکاری و دوستی و تعادل اقتصادی و از بین رفتن اختلاف طبقاتی شدید، بسیار مفید هست و باعث میشه افراد در سراسر جهان بتونن از استقلال و پیشرفت علمی و بهره مندی از فناوری های مربوطه برخوردار بشن بدون اینکه بودن در یک کشور خاص با رشد اقتصادی و علمی و فرهنگ و سیاست و ایدئولوژی خاص، اونها رو از این بهره مندی محروم بکنه. این یک نوع جهانی سازی مثبت هست که عملی بودن اون در عمل ثابت شده و امروز ما نرم افزارهای آزاد زیادی داریم که از هستهء سیستم عامل تا نرم افزارهای کاربردی پیشرفته تا ابر رایانه تا گوشی های موبایل رو میتونن پوشش بدن.
جهانی سازی ای که درحال حاضر در جهان تبلیغ میشه، بقول ریچارد استالمن جهانی سازی تجارت هست که قدرت نفوذ سیاسی تجارت رو جهانی و تشدید میکنه و ریچارد استالمن (بنیانگذار و رهبر جنبش نرم افزار آزاد) اعتقاد داره که چیز کاملا مضری هست («وقتی ما چیزی شریر را جهانی میکنیم آن یک شریر بزرگتر میشود...»).


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

نرم افزار آزاد بنظر من جنبشی ضروری و بسیار مهم بود در زمانی که واقعا به موقع و لازم بود.
چراکه بشر به عصر جدیدی وارد شد و علوم و فناوریهای جدید ذکر شده، امکان های جدیدی رو براش بوجود آوردن که بهره برداری کامل از این امکانات و اطمینان از جهت بهینه و بهره برداری انسان دوستانه و عادلانه از این قدرت ها، توسط چیزی مثل فلسفه و جنبش نرم افزار آزاد تامین میشه.

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

Alireza_Salehi
جمعه 21 آبان 1389, 13:17 عصر
مثل این که خیلی دلت گرفته؟
هر کی یک جمله میگه شما سه صفحه جواب میدی!

JaguarXF
شنبه 22 آبان 1389, 00:06 صبح
آمارش رو یه نفر در یک فروم دیگه در تاپیک مشابه (کپی همین تاپیک) گذاشته.
منبع هم گذاشته بود ولی ببخشید یادم رفت لینک منبع رو کپی کنم:
http://www.cnn.com/2007/US/Careers/01/31/cb.top.jobs/index.html

دیدی گفتم! اون اعداد برای چهار سال قبل بوده

eshpilen
شنبه 27 آذر 1389, 08:59 صبح
ما رشته ای بنام برنامه نویسی در علوم کامپیوتر نداریم

بله ميدونم برنامه نويسي از نظر علمي/آكادميك يك رشته نيست.
بيانم كاملا رسمي/علمي نبود. منظورم فعاليت عمده و تخصص و شغلي هست كه خيلي افراد دارن و عمدتا بهش ميگن برنامه نويسي، تا چيزهاي ديگه مثل مهندسي نرم افزار. بعضي از اين افراد تحصيلات آكادميك مهندسي نرم افزار هم ندارن (البته اين لزوما به معناي كم سوادي اونها نيست)؛ و خيلي هاشون در حيطهء مهندسي نرم افزار 90% يا حتي بالاتر فعاليت برنامه نويسي (به اصطلاح كدزني) انجام ميدن تا بقيهء مباحث مهندسي نرم افزار. بعضي ها هم كه اصلا كارشون فقط كدنويسي هست و شايد جزو تيمي هستن كه اين سهم/وظيفهء تعيين شده براي اونهاست.
بهرحال برنامه نويسي چه بهش بگيم رشته و چه نگيم، موضوع محوري ماهيت و خواص مورد نظر مطرح شده در اين تاپيك بوده.
ما در اين بحث خاص كار خاصي به بقيهء اجزاي مهندسي نرم افزار نداريم، چون بقيهء بخشها بيشتر تئوريك و مربوط به مباحث طراحي و زمينه چيني هستن تا عملي كردن و توليد و تكثير واقعي موضوع. اون چيزي كه پل اجرايي عملي كردن طرحها در اين علم هست و ماهيت و خواص استثنايي داره و باعث استثنايي شدن اين علم در وادي پيوند تا حد زيادي عاري از محدوديت انديشه و عمل شده، برنامه نويسي هست (يا برنامه نويسي نمود اون هست) و ما دربارهء برنامه نويسي صحبت ميكنيم چون يكراست ميخوايم بريم سر اصل مطلب و چيزي رو كه براي همگان ملموس و عملي هست و مفهوم رو كاملا ميرسونه نشون بديم.

FastCode
شنبه 27 آذر 1389, 10:03 صبح
دیدی گفتم! اون اعداد برای چهار سال قبل بوده
طوری میگید که انگار ۴ سال قبل وضع در ایران بهتر بوده!
به نظر من اگر در این ۴ سال که حقوقها در آمریکا زیاد شده,اگر ما پسرفت نکرده باشیم, پیشرفت هم نکردیم.