تير 1390

  • من و العالم (اخلاق اوپن سورسی باید داشت)

    تیم طراح قبلی سایت شبکه العالم تیم قوی بود که سایتی راه اندازی کرده بودن خیلی عالی اما دیدگاه که در پیش رو گرفته بودند به نظر شخصی خودم می تونست بهتر از اینها می بود. دروپال یک سیستم کاملا ماژولار هست و ماژول هایی همچون Views ، Panels ، CCK ماژول هایی هستند که باعث شده دروپال را ازهمه سیستم های مدیریت محتوای دیگه متمایز کنه. در سایت قبلی شبکه خبری العالم تنها نکته ای که رعایت شده بود استفاده از سی سی کی بود که استفاده شده بود و از ویوز و پنل خبری نبود. حتی خیلی از بدیهیات دروپال هم رعایت نشده بود. به نظر خودم این کار درستی نیست که ما از سیستمی استفاده کنیم که کاملا بازمتن هست و بیاییم اون رو طوری پیاده سازی کنیم که انحصاری دست خودمان باشد یعنی بیاییم مازول بنویسیم به جای استفاده از ویوز و دست کاربران را ببندیم و نگذاریم یک بلاک ساده را تغییر دهند و یا بیاییم ساختار و چیدمان سایت رو به گونه ای طراحی کنیم که کاربر سایت نتونه هیچ چیزی رو تغییر بدهد. و به نوعی از دانش کم مشتری مان سو استفاده کنیم و مشتری رو طوری به شرکت خودمان وابسته کنیم که که اونها برای کوچکترین کاری به ما وابسته بشند شاید در کوتاه مدت به نفع ما باشه و سود مالی هم داشته باشه اما مطمئنا اولین کسی که از این مورد ضربه می بینه خود ما هستیم. این صحبت های من ربطی به سایت قبلی شبکه العالم نداره چون که در سایت قبلی العالم سیاست به گونه ای بوده که از مازول های دروپال استفاده نشه. این صحبت ها را برای خودم می نویسم که باید سعی کنم در کارهایی که انجام میدهم طوری کار کنم که هرموقع از اون کار خواستم دست بکشم نگران این نباشم که بعد رفتنم من چه کسی می خواهد این سایت رو اداره کنه و بدون دقدقه اینکه حتما وقتی من می رم سایت هم جمع می شه و شخصی دیگری می اید و سایت رو از دوباره طراحی می کنه. اون سایت رو واگذار کنم به تیم نگهدارنده موجود در سازمان و خودم در کارهایی درگیر شوم که باعث رشد کاری من بشه. دوم فرودین ماه بود که به سایت حمله DDos انجام می شد این نوع از حملات DDos که نوعی بسیار پیشرفته تر از حملات دی داس معروف بود و باعث شده بود که کلا سایت دیگر در دسترس نباشه و به دلیل اینکه سرور سایت در کانادا بود هیچ گونه دسترسی به سرور نبود و نمی شد هیچ کاری کرد جز تغییر دی ان اس های سایت و تعویض سرور سایت خوب به دلیل اینکه سرور دیگر دردسترس نبود هیچ گونه بک آپی از سایت هم نبودو نمی تونستیم بگیریم و اون موقع هم الارقم وجود بک اپ سرور بر روی سرور روم تهران اما این بک اپ بلا استفاده بود. چند روزی سایت به صورت استاتیک اپدیت می شد و همچنان حملات به سایت ادامه داشت به طوری که هر ای پی به سرور داده می شد هر سروری که دی ان اس العالم بر روی ان ست می شد سرور بعد از چند ثانیه از کار می افتد از بس که منابع سیستمی اشغال می شدند و تنها راه وصل شدن به سرور جدا کردن کابل شبکه بود. حملات به سایت به گونه ای بود که تقریبا غیر قابل کنترل شده بود حتی فایروال های لینوکسی مثل APF , ... جواب نمی داد چون که حملات از یک ای پی خاص نبود و کاملا توزیع شده بود حتی فایروال های سخت افزاری هم جواب نمی دادند. حملات به گونه ای بود که که انگار بازدید واقعی بود. از اینجا به بعد بود که باید راهکار هایی در نظر گرفته می شد متفاوت مثلا وب سرور آپاچی Apache فقط می تونه 10000 کانکشن همزمان رو جواب بدهد و باید از وب سرور دیگری مثل NGINX استفاده کرد در مورد اینکه در سایت العالم از چه امکاناتی و چه ویژگی هایی در این سایت وجود دارد که در کمتر سایت ایرانی هست حتما به صورت مفصل صحبت خواهم کرد . و بالاخره بعد از 4 روز سایت جدید با همه مشکلاتش به زیر بار رفت. روز ششم فروردین ماه در روز تولدم ، در ساعت تولدم سایت جدید شبکه العالم رو بر روی شبکه جهانی اینترنت بارگذاری شد. خیلی سخت بود برایم تا به حال ندیده بودم که یک سایت واقعا به صورت همزمان بیش از 150 کاربر همزمان دارد و اصلا باور نمی شد چنین ارقامی ازبازدید سایت
    دسته بندی ها: 
  • مطلبی که حتماً باید بدانی!

    می ‌دانم که این را می‌خوانی. می‌خواهم بدانی که من این را فقط برای تو نوشتم. بقیه ممکن است فکر کنند برای آنها هم هست. اما نه، این مخصوص توست.

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

    پس بیشتر لبخند بزن. دلایل زیادی برای اینکار داری.

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

    اما این جنگ‌ها برای ما همزمان اتفاق افتاده است.

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

    یادت باشد، جرات ما همیشه هم شیر غران نیست، گاهی آن زمزمه آرامی است که آخر شب می‌شنویم، "فردا دوباره امتحان می‌کنم." پس قوی بایست. برای آنهایی که بهترین استفاده‌ها را از اتفاقاتی که برایشان می‌افتد می‌کنند، همیشه بهترین اتفاقات می‌افتد.

    تلاش من هم همین خواهد بود.

    منبع: mardoman.net

    دسته بندی ها: 
  • من و العالم (انگیزه رو باید خودمون بسازیم)

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

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

    دسته بندی ها: 
  • من و العالم (سنجیدن و بیان کردن مسائل)

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

    در پروزه های بزرگی ای که انجام می شود ابتدا گروه گرافیست طرحی را اماده می کنند و گروه برنامه نویس طرح را برروی سایت اعمال می کنند, العالم هم از این قضیه مستثنا نیست وقتی من شروع به کار کردم به من طرح اولیه گرافیکی سایت را دادند و من هم طبق طرح صفحه اول سایت را می ساختم. خیلی دلهره داشتم ازطرفی مسائل بسیار زیادی بود که باعث می شد این نگرانی بیشتر و بیشتر شود .طرح پربود از اعمالی که من نمی دانستم که باید چگونه انها را پیاده سازی کنم مثل اسلاید شو مثل اینکه یک عکس به همراه چندین تیتر در کنار هم باشند مثل اینکه چطور jcarousel استفاده کنم و ... از همه مهتر چطور از ماژول views استفاده کنم که صفحه اول سایت با کوئری های زیاد و درگیر نشدن دیتابیس داون نشود و هزاران مسئله دیگه که قصد دارم به مرور در مورد انها بنویسم فکر کنم یه کتابچه بشه این خاطرات من در این 4 ماه اول در شبکه العالم.

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

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

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

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

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

    مسلما در ساعاتی که درشبکه بودم نمی توانستم مطالعه داشته باشم از طرفی هم قول داده بودم تا دیر وقت و تا زمانی که کشش دارم در شبکه باشم وکارها را ادامه بدهم تنها فرصت برای مطالعه، زمانی بود که در منزل بودم .زمانی که هم به خانه می امدم تقریبا ساعت 10.30 - 11 شب بود خیلی سخت بود برام ،بیدار بودم و مطالعه کردن و کار کردن با ماژول های مختلف می بایست کار می کردم و تقریبا هر شب  تا 2 شب بیدار بودم و مطالعه می کردم، تا وقتی فردا به شبکه می روم بتوانم کارها رو جلو ببرم از طرفی قول داده بودم و از همه مهمتر حالا باید چنیدن نفر را هم راهنمایی می کردم و به اونها کمک می کردم تا کارهای سایت رو جلو ببرند.

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

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

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

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

    دسته بندی ها: