دانش و تجربه

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

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

شاید شما دکترا هم گرفته‌اید اما بدون تجربه همه ی دانش میشود نقاطی از هم گسسته!

نقاشی زیر این نکته را در یک نگاه توضیح میدهد! چپ دانش و راست تجربه!

آخر هفته خوبی‌ داشت باشید.

knowledge-experince

کنفرانس وب و موبایل ایران و یک نکته کوچک و مهم

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

اما یک مورد کوچک ولی به نظر بنده مهم این بود که سایت کنفرانس که به زیبایی‌ هم طراحی شده برروی موبایل  حال هر بیننده‌ای را می‌گیرد (شاید). وب سایت کنفرانس برروی  موبایل پر است از مشکلات ریز و درشت!

 Screenshot_2014-01-22-16-52-41

بر حسب اتفاق در روز بعد ایمیلی گرفتم از برگزار کنندگان Web Summit (یکی‌ از کنفرانس های بزرگ وب و تکنولوژی در اروپا) و چون باز هم برروی موبایل بودم وب سایت کنفرانس را باز کردم. و خوب همه‌چیز بسیار تمیز و مراتب.

Screenshot_2014-01-22-16-53-42

نکته اساسی‌٬ توجه به جزییات است. چیزی که ما ایرانی‌‌ها (حداقل در حوضه فناوری اطلاعات) به آنهستیموجه هستیم. جزییات بسیار ریزی که شاید بی‌ اهمیت باشد. و حال تصور کنیم وب سایت کنفرانسی که قرار است کارآفرینان و فعالان وب را یک جا جمع کند بی شک خود باید از هر لحاظ کامل و بی‌ ناقص باشد.

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

به امید دیدار شما در کنفرانس وب و موبایل ایران

۸۰۰ دوره مجانی‌ از دانشگاه‌های معتبر جهان

در میان Bookmark‌ها به دنبال یک سایت می‌گشتم که به یک لینک بسیار ارزشمند اما فراموش شده برخوردم. سایت http://www.openculture.com/ یکی‌ از سایت‌های مفید آموزشی است که در رشته‌های مختلف کلاس‌های درس دانشگاه‌های مختلف را مجانی‌ برای شما قرار داده است. لیست ۸۰۰ دروره آموزشی در رشته‌های مختلف را از این جا ببینید.
بسیاری از دانشگاه‌های معتبر جهانی‌ دوره‌های مجانی‌ دارند که شما میتوانید آنها را بگذرانید. مدرکی‌ در کار نیست اما علم و دانش ارزش آن را دارد تا در این لیست به دنبال علائق خود بگردید.

چه زبان برنامه نویسی را یاد بگیرم؟

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

تصمیم گرفتم در پستی کوتاه جوابی‌ به این سوال اولیه اما مهم بدهم.

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

از کجا شروع کنم؟

بستگی دارد برای چه کاری کد مینویسید. خیلی‌ خلاصه:

اگر می‌خواهید به دنیای وب وارد شوید کار بسیار آسان است. میتوانید با کمی‌ HTML و CSS شروع کنید و بعد به سراغ اصل کار بروید Javascript. جاواسکریپت یک زبان برنامه‌نویسی فوق‌العاده قویست و کارهای جالبی‌ می‌توان با آن انجام داد. بسیاری از  وب سایت‌های امروزی از جاواسکریپت استفاده میکنند.

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

ترکیب HTML (همچنین HTML5 که نسخه جدید HTML است ) و CSS3 می‌توان کار‌های بی‌نظیری انجام داد.

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

یاد گرفتن PHP بدون پایگاه داده مانند MySQL لطفی ندارد. معمولا این دو یار جدا ناشدنی هستند.

بد نیست از زبان Python هم یاد کنیم. زبانی که هم برای وب و هم برای هر جای دیگری مناسب است. به عنوان مثل گوگل و NASA هر دو از این زبان استفاده میکنند. یکی‌ برای وب و دیگری برای سیستم‌های کنترلی فضاپیماها. Python زبان ساده ایست و شاید از PHP برای شروع بهتر باشد.

حتما نام Ruby on Rails نیز بگوشتان رسیده. این یک زبان برنامه نویسی نیست بلکه یک قالب برای زبان برنامه نویسی Ruby است. اگر خط قبل را متوجه نشدید مهم نیست. همینقدر کافیست که Ruby on Rails برای شروع به نوشتن برنامه‌های تحت وب بسیار مناسب است حتا از زبان‌های قبل نیز بهتر!

وقت یک قهوه یا یک چای گرم است!

coffee

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

اما Java نیز زبانیست که شبیه به C++ است با این تفاوت که سطح وسیع تری از کاربرد را دارد. اگر می‌خواهید وارد دنیای Java شوید دستتان برای هر کاری باز میشود. میتوانید برای وب، دستگاه‌های سخت افزاری و حتا اندروید (با کمی‌ یادگیری اضافه) برای موبایل هم برنامه بنویسید.

اگر C را یاد گرفتید برنامه نویسی برای آیفون و آیپد نسبتا راحت میشود. سیستم عامل iOS از زبان Objective C پشتیبانی می‌کند که پایه گذار آن مرحوم استیو جابز است.

در نهایت به .Net می‌پردازیم که همان Java ی ساده شده مایکروسافت است. بسیاری از افراد بخاطر راحتی‌ محیط کار و گستردگی ابزار‌ها در .Net از این بستر برنامه نویسی استفاده میکنند. .Net یک زبان نیست و زیر مجموعه های زبان‌های برنامه نویسی را در خود دارد مانند C# و یا ASP.Net. باید اضافه کنم که برنامه نویسی برای ویندوز نسخه موبایل نیز با .Net قابل انجام است.

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

هوای خوب اما کمی‌ ابری

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

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

۱. اول این که این فضا نیاز به امید و انرژی دارد. گرچه شرایط خواسته و ناخواسته فضای کسب و کار در ایران دریا زده شده اما امید است که میتواند در این فضا باعث شکوفای شود.

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

۳. بهمدیگر احترام بگزاریم. بله احترام. همدیگر را تحمل کنیم و نقد پذیر باشیم. به رقبای خود به چشم دشمن نگاه نکنیم.

۴. کپی‌ نکنیم!!!

گرچه همچنان راه درازی برای رسیدن به محیطی‌ سرشار از انرژی و نوآوری خواهیم داشت اما با کمک به همدیگر مشکلات یکی‌ پس از دیگری محو خواهند شد.

لطفا نظرات خود را برای من ارسال کنید.

به امید دیدار