یک تجربه ناب برای من
امروز(چهارشنبه) از اون روزایی بود که به این زودی ها فراموشش نخواهم کرد. چند وقت پیش درگیر پروژه ای شدم که اساسش انتقال صوت رو شبکه ( VoIP ) بود. یک شرکت R&D وابسته به شرکت افراتاب و با همکاری شرکت ما رو این پروژه کار می کردن، وقتی دستگاهشون به صورت آزمایشی ساخته شد، به طور اتفاقی بهم پیشنهاد شد که مسئولیت طراحی Interface این دستگاه رو به عهده بگیرم، چند جلسه ای تو محل شرکتشون با هم صحبت کردیم تا اساس کار دستگاه و نیازهاشون رو کامل درک کردم، چند وقتی هم دنبال یک یا چند آدم متخصص گشتم تا به خوبی بتونه با Java این رابط رو طراحی کنن ، و خوشبختانه کارشون رو هم شروع کردن. یکی دیگه از قابلیت های اصلی این دستگاه ، امکان تنظیم پارامتر های دستگاه از طریق Web Interface هست. خب من دانشجوی برق هستم و تا حدود زیادی هم با مسائل مختلف وب آشنایی دارم و وقتی تیم طراحی سخت افزار متوجه این موضوع شدن ، از من خواستن که یه جلسه دوباره با هم داشته باشیم.
اون ها برای تنظیم پارامترهای دستگاه از طریق وب ، روی یک PIC-Micro 4 مگاهرتزی یه Embedded HTTP Server نوشته بودن و با صفحات HTML و از طریق متد GET تنظیمات رو اعمال می کردن ، به خاطر تجربیاتی که هم تو زمینه میکروکنترلر ها و هم تو برنامه نویسی C داشتم به راحتی متن برنامه هاشون رو متوجه شدم و وقتی بهم گفتن که دستگاه مشکلات امنیتی داره و در پی رفعش هستن ، به راحتی تونستم ایده هایی رو مطرح کنم . چند روزی طول کشید تا تو این مورد خاص به نتیجه برسم. امروز رفته بودم اونجا تا با کمک هم مشکلات رو حل کنیم.
مشکل اول در مورد پسورد ها بود که من بهشون پیشنهاد دادم که اولا از POST استفاده کنن و دوما از طریق Session ها جلوی Cross-Site Request Forgeries (CSRF) رو بگیرن ، CSRF ها از مسائل مهم امنیتی هستن که خیلی ها اون رو نادیده می گیرن. سومین پیشنهادی که بهشون دادم استفاده از Cookie ها بود! به این نکته توجه کنید که روی اون دستگاه خبری از Apache یا PHP نبود که بشه با چند خط کد این مسائل رو حل کرد! با کمی تلاش و با کمک هم روش پیاده سازی هر سه روش رو برای سرورشون طراحی کردیم و قراره تا چند روز آینده پیاده سازی بشه. کل حافظه این میکروکنترلر ۶۴KB هست و تازه کار اصلیش یه چیزه دیگست!
وقتی این کارها تموم شد ازم در مورد طراحی صفحات Config نظر خواستن، بهشون پیشنهاد کردم که صفحات رو هم براشون طراحی کنم، ۱ ساعتی وقت گذاشتم ، وقتی Template رو در اوردم ، خیلی نگران نظرشون بودم، مدیر بخش سخت افزار این پروژه یه فوق لیسانس برق از شریفه که آدم فوق العاده انرژیک ، سخت گیر ، دقیق و منظبطه ، لحظه ای که روی نوت بوک رو به سمتش برگردوندم تا کار رو ببینه بعد از چند لحظه مکث بهم گفت : " Too Good! "! برای این کار فوق العادست ، فکرش رو بکنید رویه دستگاه VoIP و برای کار رو شبکه شما صفحاتی دارید که XHTML & CSS Valid هستن!!! با کمی جاوا اسکریپت بازی صفحات تنظیماتشون رو هم به صورت User Friendly در اوردم.
تازه امروز فهمیدم ، برنامه نویس های وب ۱۵ سال پیش چه سختی هایی داشتن و آدم هایی که پروژه های متن بازی مثل Apache و PHP رو بنیان گذاری و مدیریت کردن ، چه لطف بزرگی در حق برنامه نویس های وب کردن، چند روز اخیر تنها به صورت اندکی درگیر مسائلی شدم که اونها مدت هاست به طور کامل حلشون کردن.
بیشتر خوشحالیم از اینه که تو این پروژه دقیقا جایی قرار گرفتم که دوست دارم ، هم از کار برقیش سر در می آرم، هم از شبکش و هم از کارهای وبیش!
تازه امروز یه جلسه موفق هم در مورد یه راهکار وبی ( Web Solution ) برای یه پورتال علمی داشتم …
بعد از این یکی – دو ماه و اتفاقاتش چنین روزی لازم بود !!
خلق شده


Saeed Gholami Shahbandi گفت:
اضافه شده ۲۱م مرداد ۱۳۸۴ at ۱:۴۷من که یک کلمه هم سر در نیاوردم , ولی دمت گرم …مثل اینکه کار مهمی کردی p-:
Saeed Gholami Shahbandi گفت:
اضافه شده ۲۱م مرداد ۱۳۸۴ at ۱:۵۰حالا اینقدر کارت خفن شده دیگه ما رو تحویل میگیری…!؟؟
آتبین گفت:
اضافه شده ۲۶م مرداد ۱۳۸۴ at ۱۹:۴۶ها…؟ چی می گه؟
bahram jahanshahy گفت:
اضافه شده ۲۸م شهریور ۱۳۸۴ at ۱۲:۴۵een matcno chand baar khundam … na faghat base inke befahmam dastan chiye … balke base in bud ke bahash haal konam … az mani mikham ke dar morede raaze movaffaghiyatash bege … khodeshe? i
فرشید گفت:
اضافه شده ۲۸م خرداد ۱۳۸۷ at ۱۳:۲۶با سلام خدمت شما
من امروز دنبال یه چیزی می گشتم که اتفاقی اینجا رسیدم. من نمی دونم شما چه کارایی کردی اما اینو می دونم که میثم یعنی همون فوقه لیسانسه میگفت همشو ریختیم دور و سه چهار ماه بعد از من خواست تا براش دوباره بنویسم که من با VC براش نوشتم. اینارو گفتم تا بدونی که همون موقع هم نباید زیادی لذت می بردی و مغرور می شدی.