پندهایی به دانشجویان کامپیوتر- بخش نخست
یکی از نویسندگان و متفکران کامپیوتری محبوب من جول اسپالسکی است، پیشتر در دو پست از او یاد کردهام. او مقاله معروفی دارد که آغاز سال 2005 یعنی 3 سال پیش نوشته. مدتها پیش بخشی از آنرا به فارسی برگردانده بودم. اکنون همه آنرا در سه بخش تقدیم میکنم:
برای خواندن بخش دوم به اینجا بروید.
پندهایی به دانشجویان کامپیوتر
گذشته از اینکه تنها یک یا دو سال پیش بود که من در مورد اینکه چگونه رابط کاربری توانمند ویندوز موج آینده را می سازد،گزافه گویی می کردم، دانشجویان کامپیوتر گهگاه به من ایمیل می زدند که به آنها پندهایی برای شغل (آینده) شان بدهم. از آنجا که اکنون فصل استخدام است بر آن شدم که پند های استاندارد خود را بنویسم تا که آنرا بخوانند، به آن بخندند و بیخیالش شوند.
خوشبختانه بیشتر دانشجویان کامپیوتر آنقدر زرنگ! هستند که به خودشان زحمت نمی دهند که از پیران و پیشگامان خود بخواهند که آنها را نصیحت کنند، امری که در کامپیوتر کار خوبی است. زیرا بزرگترهایشان آماده اند تا به آنها حرفهایی احمقانه و فسیل شده بزنند مثل ” تقاضا برای کاربران وارد کننده کارت پانچها تا سال 2010 به 100000000(صد میلیون) نفر خواهد رسید” یا ” بازار کارهای مرتبط با زبان Lisp امروزه بسیار داغ است”.
خود من هم هنگامی که دانشجویان کامپیوتر را نصیحت می کنم، نمی فهمم چه می گویم. به من امیدی نیست و دیگر به روز نیستم، از چیزهایی مثل Yahoo Messenger سر در نمی آورم (وحشتناک است نه؟) و هنوز هم از چیز قدیمی و عجیبی که به آن Email میگویند استفاده می کنم چیزی که زمانی همه گیر بود،زمانی که آهنگها بر روی صفحه صاف و گردی که به آن CD می گفتند به بازار آمد.
پس بهتر است که از این چیزهایی که اینجا می گویم چشم پوشی کنید و بجای آن از آن چیزهای آنلاینی درست کنید که می توان با آن دیگر مردم را پیدا کرد و قرار گذاشت و بیرون رفت.
با این وجود:
اگر از برنامه نویسی لذت می برید خدا را شکر کنید زیرا از جمله محدود افراد بسیار خوش شانسی هستید که با انجام دادن کاری که دوستش دارید می توانید زندگی خوبی بسازید. بیشتر مردم اینقدر خوش شانس نیستند. این ایده که “عاشق کارتان باشید” مفهومی کاملا نو است. در گذشته مردم فکر می کردند که کار چیزی ناگوار است که انجامش می دهید که پول در بیاورید تا با آن کاری را که واقعا دوست دارید انجام دهید ، آنهم پس از بازنشستگی در سن 65 سالگی به این شرط که پول لازم را داشتید و بیش از حد پیر و ناتوان نشده بودید و زانوها و چشم سالن داشتید و می توانستید بدون اینکه نفستان بند آید بیست قدم را بروید و هزار اما و اگر دیگر.
کجا بودیم؟ آهان. نصیحت.
بدون حرف پیش من 6 نصیحت رایگان برای دانشجویان کامپیوتر دارم:
1. نوشتن را پیش از فارغ التحصیلی یاد بگیرید .
2. زبان C را پیش از تمام شدن درستان یاد بگیرید.
3. اقتصاد خُرد را پیش از فراقت از تحصیل فرا بگیرید.
4. درسهایی که کامپیوتری نیستند را تنها به این خاطر که کسل کننده هستند سرسری نگیرید.
5. دیگر نگران فرصتهای شغلی که نصیب هندی ها می شود نباشید.
6. مهم نیست که چه می کنید دوره کارآموزی خوبی بردارید.
حالا اگر توضیح بیشتر میخواهید- به شرط آنکه آنقدر زود باور نباشید که این حرفها را تنها چون من گفته ام باور کنید- این را هم اضافه کنید: 7. بدنبال راهنمایی و کمکِ حرفه ای بگردید تا عزت نفس پیدا کنید.
نوشتن را پیش از فارغ التحصیلی یاد بگیرید
اگر لینوس توروالدز، لینوکس را تبلیغ نمیکرد آیا امکان داشت که لینوکس موفق شود؟ همانقدر که وی هکر و برنامه نویس موفقی است، همانقدر توانایی وی در بیان ایدههایش با نوشتن به انگلیسی در Email و لیست های پستی بود که باعث شد لینوکس بتواند گروه های داوطلبان را در سراسر جهان به خود جلب کند.
از آخرین روش خبر دارید، Extreme Programming ؟ بدون اینکه بگویم در باره این روش چه فکر می کنم، می گویم که دلیل اینکه شما درباره اش شنیده اید این است که از کسانی شنیده اید که نویسندگان و سخنرانان سرآمدی هستند.
حتا در مقیاس کوچکتر، هنگامیکه به هر شرکت برنامه نویسی دقت کنید، می بینید که توانمند و تاثیرگذار ترین برنامه نویسیان آنهایی هستند که راحت،روان و خوب به انگلیسی صحبت می کنند و می نویسند. اینگونه انگلیسی دانستن به ارتقا کمک می کند، گرچه دست شما نیست.
فرق برنامهنویس متوسط و یک برنامه نویس عالی در تعداد زبانهای برنامه نویسی که میدانند و در اینکه پایتون یا جاوا را ترجیح می دهند نیست. بلکه در این است که می توانند ایدههایشان را بیان کنند یا نه. آنها با ترغیب مردم، موفق شده و نیرو می گیرند. با نوشتن توضیح و مشخصههای فنی واضح و روشن، به دیگر برنامه نویسان این توانایی را می دهند که کُدشان (برنامه) را بفهمند، یعنی دیگر برنامه نویسان بجای اینکه آن کدها را دوباره نویسی کنند با کدهای آنها کار می کنند و از این کدها استفاده می کنند. در غیر اینصورت کدشان بی ارزش است. با نوشتن مستندات فنی روشن برای کاربران نهایی، مردم متوجه می شوند که این کد چه کار می کند و این تنها راهی است که بوسیله آن کاربران ارزش این کدها را می فهمند. جایی در sourceforge تعداد زیادی برنامههای عالی و کاربردی مدفون شدهاند و کسی از آنها استفاده نمیکند زیرا این برنامهها را برنامهنویسانی نوشته اند که خوب نمی نویسند (یا اصلا نمی نویسند)، بنابراین کسی متوجه نمیشود آنها چه کردهاند و برنامه درخشانشان از درخشش می افتد.
من برنامهنویسی را استخدام نمی کنم،مگر آنکه بتواند واقعا خوب به انگلیسی بنویسد. اگر بتوانید بنویسید، هر جا که استخدام شوید، زود درمیابید که از شما می خواهند تا مشخصه های فنی را بنویسید یعنی اینکه دارید تاثیر خود را می گذارید و مورد توجه مدیران قرار گرفتهاید.
بیشتر دانشگاهها کلاسهای مشخصی به نام “نویسندگی حرفهای” دارند، یعنی باید بتوانید خیلی خوب بنویسید تا آنها را پاس کنید. دنبال این کلاسها بگردید و در آنها شرکت کنید. دنبال کلاسهایی بگردید که تکالیف هفتگی با روزانه دارند.
نوشتن در یک نشریه یا وبلاگ را آغاز کنید. هر چه بیشتر بنویسید، نوشتن آسانتر خواهد شد و هرچه آسانتر شود بیشتر می توانید بنویسید و به همین ترتیب.
برای خواندن بخش دوم به اینجا بروید.
در این رابطه نوشته «پندهایی به دانشجویان کامپیوتر: چشمان خود را باز کنید» را نیز بخوانید.
اگر می خواهید بار دیگر که مطلبی نوشته شد، آگاه گردید. عضو خوراک (feed) این بلاگ شوید. همچنین می توانید مرا در تویتر دنبال کنید.