یه نویسنده

مقاله، کتاب، کد و ...

مقاله، کتاب، کد و ...

یه نویسنده

وبلاگی برای فعالیتهای پژوهشی و برنامه نویسی کامپیوتر، که شاید دفتر یادداشتی از دانسته‌های روزانه‌ی من باشد(شاید به‌کار شما هم بیاید). مطالبی که از دنیای کدباز جمع‌آوری میکنم و برای علاقه‌مندان این شاخه از فناوری انتشار میدهم. بیشتر نوشته‌های وبلاگ را برنامه‌نویسی‌php و سیستم‌عامل لینوکس تشکیل می‌دهند.

طبقه بندی موضوعی

این zend زننده ...

الان نزدیک دو هفته هست که فقط میخوام zend رو نصب کنم و یه نمونه برنامه با اون بنویسم ولی واقعا کلافه کننده و زننده هست. مثلا zend در ورژن ۱ بصورت فایل دانلود میشد و با استفاده از command میتونستی کنترل‌ها رو بسازی و خودش همه چیو کنترل میکنه

ولی در ورژن ۲ ابتدا باید composer  نصب کنی و بعد بصورت depends تمام فایل‌های مورد نیاز پروژه رو بصورت خودکار تیکه تیکه از وب دانلود میکنه. من هر دو روش رو جلو رفتم. روش اول کلا ارور میده و فایل htaccess. بخوبی بر روی وب سرور من کانفیگ نمیشه. جالب اینجاست ۵تا فیلم آموزشی از وب گرفتم و ۵تاشون روش مخلفی رو برای نصب گفتن. تازه ۴ تا از این ویدیوها دارن روی mac نصب میکنن و فقط یکی از اون‌ها بر روی ویندوز نصب میکنه.

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

آخه منه برنامه‌نویس چقدر وقت دارم بشینم دو ساعت نصبش کنم و بعدش بشینم کار با اون رو یاد بگیرم. تازه مدتی بشینم ماژول‌ها و کار با توابع اون رو یاد بگیرم. به نظرم بیخیال شدن از این zend زننده بهتر از ادامه دادنش باشه.

در واقع بی حق نیستن بیشتر برنامه‌نویس‌ها میرن سراغ codeigniter یا کیک‌پی‌اچ‌پی.

خلاصه دو هفته از وقت ما هدر رفت اونم به نتیجه.

احتکار در دنیای تکنولوژی

چند روز پیش توی خبرها خوندم که مایکروسافت میخواد دستگاه xbox one رو به بازار عرضه کنه ولی برای راه‌اندازی سایت مستقل برای این دستگاه به مشکل برخورد کرده. ماجرا از این قرار بود که نزدیک به یک سال پیش شخصی دامنه‌های xboxone.com و xboxone.net را ثبت کرده و تا سال 2016 هم در اختیار وی می باشد. البته همچین ماجرایی برای فیس بوک هم پیش اومده که گوگل تونسته بود دلال‌های دامنه رو محکوم کنه.(منبع گویا آی‌تی)
اسم این کار رو چه میشه گذاشت؟ مثلا چقدر سود قراره از این طریق بدست بیاد؟ مثلا کسی که دست به این کار زده الان چه افتخاری به نبوغ خودش میکنه که تونسته دامنه رو پیش‌بینی کنه و بعد ثبتش کنه تا بعدا به مایکروسات بفروشه. 
حالا بی‌خبر از این که قراره همین بلا سر خودمم بیاد و این شد که امروز صبح طبق معمول اومدیم برا مشتری دامنه ثبت کنیم  دیدیم ای دل غافل این دامنه قبلا ثبت شده خلاصه یکم با حروف بازی کردم دیدم نه نشد انگار همه ثبت شده. اعصابم خرد شد آخه این همه اسامی مشابه برای چی ثبت شده رفتم دیدم به‌به یکی از همین نوابغ در کشور ما هم دست به کار بزرگ‌تری زده!!!!!. یعنی واقعه ای‌ولا داره‌ها طرف رفته دامنه‌های زیادی رو ثبت کرده و حالا براش سایتم راه‌اندازی کرده.

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

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

بعد از ارائه رایانش ابری این بار در درس مباحث ویژه که با مهندس پورعیسی دارم، در مورد راه‌کارهای رایانش ابری و این که از رایانش ابری چه استفاده‌ای میشه کرد. اسلاید این ارائه رو از لینک زیر میتونید دانلود کنید.


دریافت
حجم: 3.8 مگابایت


یاد ایامی ...

قبلا هاست میگرفتیم همه چیز نا محدود، پهنای باند کرور-کرور و باهزار امکانات دیگه حالا کار ما بجایی رسیده اگه دو تا دیتابیس درست کنم، دیگه تموم.

اخطار در اعماق کدها

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

برای تحویل پایانی نام کاربری رو ali1 دادیم و پسورد رو 1234 که سیستم هنگ کرد. گفتم شاید از تابع ساخت پسورد hash هست غیر فعال کردم دیدم نشد. گفتم شاید از دیتابیس هست دیدم نبود. گفتم شاید بخاطر تابعی که برای جلوگیری از sql_injection نوشتم باشه دیدم نبود خدایا تمام برنامه رو زیر رو کرد.

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

آموزش تعمیرات بوت در ویندوز و لینوکس

یه وقتایی حسابی باید سیستم رو داغون کرد. خب چیکار کنیم ناچاریم. مثلا من روی لپ تاپم ویندوز۷ و اوبونتو داشتم. بعد نیاز به ویندوز سرور ۲۰۰۸ بود. تا اینجا کار درست پیشت میرفت. ولی بعد از داغون شدن ویندوز۷ نیاز به نصب یه ویندوز دیگه بود. ولی وقت کافی برای پشتیبان گیری فایل‌های ویندوز۷ رو نداشتم و تصمیم گرفتم یه ویندوز ۷ در درایو دیگه‌ای نصب کنم و بعدا سر فرصت برگردم و فایل‌هاش رو پشتیبان بگیرم و آخرشم فرمت و بازگردوندن فضای اون به ویندوز۷ نصب شده فعلی.

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

مشکل در نشناختن پارتیشن بوت توسط خودم بود. چون اوبونتو با دستور fdisk -l جلوی پارتیشن بوت   *  میزد که اینبار هیچی نشون نمیداد و منم الکی یکی از درایوهارو انتخاب میکردم و خلاصه دردسر. از اون طرف ویندوز۷ نمیتونست با منوی boot repair خودش رو تعمیر کنه. ولی راه حلش رو یافتم که شامل مراحل زیر بود:

ابتدا باید دی وی دی ویندوز۷ رو بوت کرد و به محیط cmd برید و دستورات زیر رو وارد کنید:

bootrec /fixmbr

bootrec /fixboot

البته ابتدا دستور اول و بعد دوم. بعدش لینوکس اوبونتو رو زنده راه‌اندازی کنید و دستورات زیر رو برای نصب نرم‌افزار boot-repair رو وراد کنید:

sudo add-apt-repository ppa:yannubuntu/boot-repair

sudo apt-get update

sudo apt-get install boot-repair

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

من از فایل deb نرم‌افزار boot-repair پشتیبان گرفتم و میتونید با دانلود اون و زدن دستورات زیر اون رو نصب کنید.

sudo dpkg -i *.deb

منبع

نصب aptana stdio 3 روی اوبونتو

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

برای نصب روی اوبونتو ابتدا باید jvm بر روی اوبونتوی شما نصب باشه:

sudo apt-get install openjdk-7-jre libwebkitgtk-1.0-0 git-core

بعد از اون آخرین نسخه aptana رو از سایت رسمی اون دانلود کنید البته بسته لینوکس رو دریافت کنید. حجمی بین ۱۳۰مگابایت داره.

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

ابتدا باید فرمت آیکون اون رو xpm به png تغییر بدید. میتونید از سایت convertmyimage استفاده کنید یا از فایل تبدیل شده‌ای که بنده تهیه کردم استفاده کنید.

روش کار اینه که ابتدا فایلهایی که از حالت فشده خارج کردید به پوشه opt ببرید. و بعد فایل aptanastdio3.desktop رو درست کنید. پس یه پوشه در home درست کنید و اسم اون رو aptana بزارید و بعد فایل دانلود شده aptana رو اونجا کپی کنید و از حالت فشرده خارج کنید. بعد فایل icon.png رو که دانلود یا تبدیل کردید رو در اون کپی کنید.

در ترمینال دستورات زیر رور وارد کنید تا فایل‌ها به opt انتقال پیدا کنن


فایل‌ها به opt انتقال پیدا کرد ولی هنوز در لیست نرم‌افزارها نیست. باید فایلی به اسم aptanastudio.desktop در پوشه applications درست کنید. برای این کار از ابزار محبوب nano استفاده میکنیم. ابتدا نانو رو نصب کنید:

sudo apt-get install nano

البته از هر ویرایشگری میتونید استفاده کنید. حالا باید به مسیر applications برید دستور زیر رو در ترمینال وارد کنید.

cd /usr/share/applications

حالا با نانو یک فایل به اسم aptanasudio3.desktop رو در همین مسیر باز کنید:

و حالا اسکریپت زیر رو اون کپی کنید:

[Desktop Entry]

Version=1.0

Encoding=UTF-8

Name=Aptana Studio 3

GenericName=Integrated Development Environment

Comment=Aptana Strudio 3 Integrated Development Environment

Exec=/opt/Aptana_Studio_3/AptanaStudio3 %F

TryExec=/opt/Aptana_Studio_3/AptanaStudio3

Icon=/opt/Aptana_Studio_3/icon.png

StartupNotify=true

Terminal=false

Type=Application

MimeType=text/xml;application/xhtml+xml;application/x-javascript;application/x-php;application/x-java;text/x-javascript;text/html;text/plain

Categories=GNOME;Development;IDE;

فایل رو ذخیره کنید و حالا اسم نرم‌افزار رو لیست نرم‌افزارها مشاهده میکنید.


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

دانلود اسلاید بسیار مفید درباره شی‌گرایی در php

دوستانی که قصد دارن مبحث شی‌گرایی رو در php یاد بگیرن میتونن از اسلاید انگلیسی و بسیار مفید زیر استفاده کنن.

دریافت
عنوان: شی‌گرایی
حجم: 567 کیلوبایت
توضیحات: پی اچ پی

در نا امیدی بسی امید است

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

ولی انگار امیدی هست و کاربران کم کم دارن از IE جدا میشن و میان سمت مرورگرهای دیگه امار مقایسه سال ۲۰۱۲ با ۲۰۱۳ رو از سایت sitepoint.com گرفته شده:


نصب ابزارهای ftp روی اوبونتو

برای برنامه‌نویسان تحت وب نرم‌افزارهای ftp جزو الزامات دم دستشان است. دو نرم‌افزار محبوب در این حوزه که بنده تجربه کار با آنها را داشته‌ام و بیشتر اوقات بصورت همزمان از هر دو استفاده میکنم filezilla و Gftp هست. هر دوتاشون دوست داشتنی و امکانات بالایی دارن. در این پست میخوام نصب و استفاده از این دو ابزار رو در لینوکس اوبونتو براتون توضیح بدم.