رمز نگاري ايميل ها

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

آیا شنود ایمیل امکان پذیر است؟

اگر قصد دارید به پاسخ این سوال برسید یک بار کامل وقت بگذارید و این مطلب را واقعآ با دقت بخوانید، با اسکرول کردن انتظار نداشته باشید پاسخ سوال تان را بیابید.

امکان پذیر بودن یا نبودن می تواند دو معنی مختلف داشته باشد، یکی اینکه آیا از نظر علمی و تئوری امکان پذیر است یا نه؟ و یکی اینکه آیا «قابل انجام در شرایط واقعی» است یا نه؟ پاسخ سوال اول «قطعآ بله» و پاسخ سوال دوم «تقریبآ خیر» است.

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

راه دیگر اینکه ایمیل توسط سایر افراد موجود در شبکه خوانده شود، مثلآ اگر از اینترنت وایرلس در خانه استفاده می کنید و هم شما به اینترنت خانه وصل هستید و هم دوست تان. دوست تان در شبکه داخلی شما است و اگر از پروتوکول رمزنگاری شده استفاده نکنید دوست تان می تواند با استفاده از نرم افزار های مخصوص ایمیل های شما را بخواند (یا اصطلاحآ packet sniffing – زیاد هم آسان نیست).

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

Computer Encryption

حقوق تصویر: Dreamstime

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

حال اگر ایمیل ها به صورت ساده یا plain text ارسال نشده باشند (که نمی شوند) ایمیل ها ابتدا باید رمزگشایی شده و سپس متن آنها مورد جستجو برای یافتن کلمات کلیدی قرار بگیرد. اگر برنامه آن ایمیل را مشکوک تشخیص داد آن ایمیل اصطلاحآ flag می شود، یعنی نشانه گذاری می شود برای اینکه یک «انسان» (!) آن را بررسی کند.

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

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

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

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

مهم: از قسمت Settings (بالای صفحه سمت راست) گزینه Always use HTTPS را انتخاب کرده و روی Save changes کلیک کنید (راهنما؟). این باعث می شود شما همیشه از یک پروتوکول رمز نگاری شده استفاده کنید. اگر نمی دانید «پروتوکول رمز نگاری شده» چیست نگران نباشید، چیز خوبیه.

مهم: استفاده از HTTPS به تنهایی امکان شنود – دسته جمعی – ایمیل را نزدیک به صفر می رساند. روش زیر نیاز به استفاده از کلید یا رمزی دارد که باید در دسترس فرستنده و هم گیرنده باشد. در نتیجه مناسب برای پیام های شخصی ای است که شما با یک یا چند نفر خاص رد و بدل می کنید.

* روش زیر فقط برای ایمیل های Gmail کار می کند.

* برای استفاده از این روش باید از مرورگر Firefox استفاده کنید.

* این مراحل را باید هم فرستنده و هم گیرنده ایمیل انجام دهند.

مرحله اول، برنامه رایگان GnuPG را دانلود و نصب کنید (نسخه ویندوز).

مرحله دوم، افزونه FireGPG را روی فایرفاکس نصب کنید.

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

برای این کار در فایرفاکس از منو Tools وارد FireGPG و سپس Key Manager شده و روی New Key کلیک کنید (راهنما؟).

حالا پنجره باز شده را طبق راهنما پر کنید و روی Generate Key کلیک کنید. این کار شاید یک دقیقه طول بکشد، باید صبر کنید. حالا کلید های شما آماده هستند. فقط باید آن را از لیست انتخاب کنید و روی Export to server کلیک کنید تا کلید عمومی شما برای استفاده فرستنده ایمیل (به شما) قابل دسترس باشد.

FireGPG Keymanager

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

FireGPG Import Selected=

حالا وقتی وارد پنجره نوشتن ایمیل جدید در جیمیل می شوید تصویر زیر را مشاهده می کنید:

Gmail compose email using FireGPG

دقت کنید که اون عکس قفل همیشه موقع ارسال ایمیل روشن باشد. اگر دکمه Sign را هم روشن کنید امضای دیجیتال شما به نامه اضافه می شود که ضامن این است که این ایمیل واقعآ از طرف شما ارسال شده.

در تصویر بالا می بینید که دوست من می خواهد یک ایمیل مهم برای من بفرستد. وقتی روی Send کلیک می کند پنجره ای باز می شود و «کلید عمومی» من (گیرنده) را می پرسد. دوست من هم قبلآ کلید من را (از قسمت سرچ که در بالا توضیح داده شد) اضافه کرده. در نتیجه فقط آن را انتخاب می کند و ok می کند.

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

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

حالا ببینیم من چی در ایمیلم دریافت می کنم،

Very Important Information in GmailEncrypted email in gmail using FireGPG

همانطور که می بینید اطلاعات رمز نگاری شده، در پنجره باز شده من باید رمزی که انتخاب کردم یا همان کلید خصوصی ام را وارد کنم تا بتوانم متن اصلی را ببینم:

Enter private key Gmail FireGPG

Email Decryption in Gmail

نکات مهم:

* در صورت دریافت پیغام خطا در رابطه با برنامه GnuPG از گزینه Options افزونه FireGPG و سپس قسمت GPG فایل برنامه GnuPG را انتخاب کنید. (راهنما؟)

* این روش برای متن های فارسی هم کار می کند.

* وقتی در حال نوشتن ایمیل هستید ایمیل به صورت رمز نشده در سرور جیمیل ذخیره می شود (قابلیت auto save). اگر نگران این موضوع هستید از قسمت Options افزونه FireGPG و سپس قسمت Gmail گزینه Disable autosave feature را تیک بزنید. (راهنما؟)

* عملیات امضا زدن یا رمزنگاری را با فایل ها هم می شود انجام داد. برای این کار از گزینه File operations استفاده کنید. (راهنما؟)

نحوه کار این روش رمز نگاری چگونه است؟

اگر اطلاعاتی راجع به رمزنگاری نداشته باشید احتمالآ با مراحل بالا کمی گیج شده اید. بگذارید با هم ببینید مرحله به مرحله چه کار کردیم؟

برنامه GnuPG را دانلود کردیم که یک برنامه رایگان است که قابلیت های رمزنگاری را به ما می دهد.

افزونه FireGPG رابط بین GnuPG و مرورگر اینترنت ما است.

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

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

ما هم همین کار را کردیم، اول یک کلید عمومی ساختیم و آن را در یک سرور اینترنتی به اشتراک گذاشتیم تا دوستمان آن را دانلود کند (آنجا که روی Import selected keys کلیک کردیم). می توان به جای Export to server گزینه Export to file را انتخاب کرد تا حتی کلید عمومی هم در معرض دید نباشد و می شود کلید عمومی را به صورت یک فایل مثلآ روی یک فلش دیسک به گیرنده داد.

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

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

رمز نگاری encryption


منبع: زنگوله

!

ساخت توزیع Live CD لینوکس روی USB

ساخت توزیع زنده لینوکس روی USB




دیسک‌های زنده‌ی لینوکس (Live CD) مزایای بسیاری دارند. شخصاً در مواقعی که ویندوز با مشکل مواجه می‌شود، برای ویروس یابی، انتقال فایل‌ها، اتصال به اینترنت و … از دیسک زنده کمک می‌گیرم با این حال دیسک‌های زنده یک اشکال بزرگ دارد و آن‌هم ناتوانی در ذخیره‌ی فایل‌های جدید و تغییر یافته است، اینجاست که استفاده از USB به کار می آید.

LiLi USB Creator برنامه‌ی جدیدیست که خیلی راحت می‌تواند توزیع‌های لینوکس را روی USB راه‌اندازی کند که هم می‌توان بصورت Bootable  و هم با استفاده از Virtualbox در ویندوز آن از آن استفاده کرد.


LiLi در 5 مرحله کوتاه این کار را برای شما انجام می‌دهد. ابتدا فایل بدون نیاز به نصب آن را دریافت کنید. پس از اجرا با محیطی روبه‌رو می‌شوید که 5 مرحله دارد.





گام اول: انتخاب USB Drive


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


گام دوم: انتخاب منبع


در این مرحله نیاز به یک فایل Iso از توزیع مورد نظر دارید. اگر از قبل این فایل را در اختیار دارید با استفاده از گذینه ISO/IMG آنرا انتخاب کنید. در غیر اینصورت می‌تواند با استفاده از یک دیسک زنده فایل iso را بسازید و یا اینکه مستقیماً ار اینترنت دانلود کنید.


توجه داشته باشید که LiLi در حال حاضر تعداد محدودی از توزیع ها را پشتیانی می‌کند، بهتر است نگاهی به لیست آنها بیاندازید.


گام سوم: تعیین مقدار فضا


این قسمت در واقع مزیت Usb Drive را نسبت به Live Cd نشان می‌دهد. در تنظیمات این بخش شما می‌توانید از فضای خالی باقیمانده فلش مموریتان مقداری را برای ذخیره تنظیمات و نوشتن فایل‌ها، به لینوکس اختصاص دهید. بهتر است این فضا بیشتر از 250 مگابایت باشد.


گام چهارم : اختیارات


گزینه اول، به شما اختیار می‌دهد که فایل‎های ساخته شده روی Usb Drive را به حالت پنهان در آورد یا خیر.


گزینه دوم، امکان فرمت کردن Usb Drive را به Fat32 در اختیار می‌گذارد که اگر دلیل خاصی برای انجام ندادن آن ندارید بهتر است این گزینه را انتخاب کنید تا مشکلی در نصب بوجود نیاید.


گزینه سوم، همان‌طور که گفتیم شما میتوانید با استفاده از این برنامه توزیع خود را در ویندوز با استفاده از Virtualbox بصورت مجازی استفاده کنید. با انتخاب این گزینه LiLi بصورت خودکار Virtualbox را از اینترنت دانلود می‌کند تا برای استفاده آماده شود. در صورت عدم انتخاب این گزینه تنها قادر خواهید بود از Usb Drive بصورت Bootable استفاده کنید.


گام پنجم : ساختن


قبل از کلیک کردن روی علامت رعد و برق بهتر است چند مورد کوچک را بررسی کنید. اول مطمئن شوید در مرحله اول Usb Drive خود را درست انتخاب کرده‌اید و اطلاعات مهمی روی آن ندارید چون هر چیزی که در آن باشد پاک خواه شد. سپس نگاهی به آیکون‌های چراغ راهنمایی که در گوشه سمت راست پایین هر مرحله است بکنید، هر کدام که سبز بود نشان می‌دهد آن قسمت آماده است. حالا می‌توانید روی آیکون رعد و برق کلیک کنید تا کار ساختن را آغاز کند.


پس از پایان کار برنامه پیغامی با عنوان موفقیت ساخت به شما نشان خواهد داد. اکنون برای استفاده از توزیع زنده خود بصورت مجازی در ویندوز باید در My Computer روی آیکون USB Drive خود راست کلیک کنید و گزینه LinuxLive ! را انتخاب نمیایید.

اگر هم می‌خواهید از آن بصورت Bootable استفاده کنید باید پس از reboot کردن کامپیوتر، در تنظیمات BIOS مادربود، انتخاب اول را USB Driver قرار دهید تا شروع به کار کند.



کار با LiLi USB Creator بسیار راحت و آسان است و نیاز به دانش زیادی برای استفاده ندارد با این حال بهتر است برای خواندن راهنمای کامل استفاده به این صفحه بروید تا اگر مشکل یا سوالی دارید برطرف شود.

برای مراجعه به منبع بر روی لینک مقابل کلیک نمایید:ساخت توزیع زنده لینوکس روی USB 

انواع برنامه نویس

The Day Programmer vs. The Night Programmer
برنامه نویس روز کار، برنامه نویس شب کار!

می توان برنامه نویسان کامپیوتر را فارغ از فنآوری مورد استفاده ای که از آن استفاده می کنند به دو گروه تقسیم کرد:
1.      برنامه نویسان روز کار (Day Programmer)
2.      برنامه نویسان شب کار (Night Programmer)


امروزه برنامه نویسان روزکار زیاد تر هستند و در اکثر شرکتهایی مشغول کارند که عموما از عدم کارایی رنج می برند. مشخصات برنامه نویسان روزکار را می توان در موارد زیر جمع بندی نمود:
1.      بیشتر رهبری می شوند تا رهبری کنند.
2.      آنها با پیچیدگی مسائل مشکل دارند.
3.      قدرت تجسم بخشیدن -مدل سازی- یک مساله را نداند.
4.      در خانه برنامه سازی نمی کنند.
5.      عموما در انجمن های توسعه و برنامه سازی مشارکت نمی کنند.
6.      در مجموع برنامه نویسی را فقط یک شغل می دانند.

مشخصات اصلی برنامه نویسان شب کارعبارت است از:
1.      اغلب قابلیت رهبری تیم ها را دارند و آن را انجام می دهند.
2.      آنها اغلب تمایل دارند مسائل پیچیده را حل کنند.
3.      می توانند مسائل را مجسم کنند و مدل سازی نمایند و از یک نوع حس ششم برخوردارند.
4.      ابزارهای برنامه سازی را در خانه هم دارند.
5.      در گروه ها و انجمن های برنامه نویسی شرکت می کنند.
6.      برنامه نویسی را مانند نفس کشیدن حیاتی می دانند.

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

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

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

دیده ام که شب کارها کمتر مایلند و می توانند با مشتری ارتباط برقرار کنند اما گروه دوم بهتر می توانند از پس این قضیه برآیند.

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

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

همین!

به نقل از متین.ب.ر.


حالا شما کدوم وری هستیـــد؟!؟

چرا نرم‌افزارها مي‌ميرند؟

چرا نرم‌افزارها مي‌ميرند؟

معمولاً وقتي سازمان يا شركتي نرم‌افزاري را سفارش مي‌دهد، هيچ‌گاه به اين موضوع فكر نمي‌كند كه ممكن است قبل از تحويل گرفتن آن، نرم‌افزار او بميرد و از آن محصول نتواند استفاده كند. يا اگر نرم‌افزار را سالم تحويل بگيرد باز هم به اين موضوع فكر نمي‌كند كه اين نرم‌افزار روزي مي‌ميرد. معمولاً وقتي سازمان يا شركتي نرم‌افزاري را سفارش مي‌دهد، هيچ‌گاه به اين موضوع فكر نمي‌كند كه ممكن است قبل از تحويل گرفتن آن، نرم‌افزار او بميرد و از آن محصول نتواند استفاده كند. يا اگر نرم‌افزار را سالم تحويل بگيرد باز هم به اين موضوع فكر نمي‌كند كه اين نرم‌افزار روزي مي‌ميرد.

سازمان‌هاي بزرگ هزينه‌هاي قابل‌توجهي را صرف خريد تجهيزات IT از سخت‌افزار گرفته تا نرم‌افزار و تجهيزات شبكه‌اي مي‌كنند و نكته قابل توجه اين‌كه بيشترين درصد خرابي و مشكلات از آن نرم‌افزار است، اما به راستي چرا اين‌گونه است؟ چرا در اكثر پروژه‌هاي نرم‌افزاري كشورمان اين مشكل ديده مي‌شود؟

1. يكي از مشكلات پروژه‌هاي نرم‌افزاري نداشتن برنامه كاري يا داشتن برنامه زمان‌بندي غيرحقيقي است. به عنوان مثال، در حالي كه نظر كارشناسي اين است كه مدت زمان اتمام پروژه با توجه به اجزاي آن چهار ماه طول خواهد كشيد، شما به عنوان مدير پروژه نرم‌افزاري نبايد قول بدهيد كه پروژه دو ماه ديگر به اتمام مي‌رسد. اين كار باعث خواهد شد به دليل كمبود وقت كيفيت نرم‌افزار كم شود.

تجربه نشان میدهد، عدم توجه به هشت نكته مهم را دخيل مي‌داند:

2. به‌كارگيري نرم‌افزاري كه كيفيت پاييني داشته باشد حتماً با شكست روبه‌رو مي‌شود. تصور كنيد كه روي اجزاي سيستم‌هاي نرم‌افزاري آزمايش كاملي صورت نگيرد و از روش‌هاي آزمايش مكرر در هنگام برنامه‌نويسي استفاده نشود. اگر نيازهاي كاربران (نه به صورت كامل بلكه جزئي) تغيير كند سيستم ديگر نمي‌تواند قابل استفاده باشد.

3. نبايد فكر كنيم اتفاق خارق‌العاده‌اي رخ مي‌دهد و كاربران سيستم همان‌گونه كه ما به آن‌ها مي‌گوييم، با سيستم رفتار مي‌كنند. شايد ورود اطلاعات زياد و رفتارهاي مختلف كاربران در سيستم تأثير داشته باشد و باعث شود نتيجه خوبي از پروژه نگيريم.

4. اگر چه تغيير كلي نيازهاي كاربران پروژه نرم‌افزاري را با مشكل روبه‌رو مي‌كند، اما باور كنيد كه كاربران نيازهاي جديدي خواهند داشت. بهتر است در پروژه‌هاي نرم‌افزاري از روش‌هاي آبشاري قديمي استفاده نكنيم و از روش‌هاي نوين مانند test driven development بهره بگيريم. (براي اطلاعات بيشتر به اين نشاني مراجعه کنيد(

 5. در پروژه‌هاي نرم‌افزاري از نيروهاي آزموده و حرفه‌اي استفاده كنيم. اگر چه نيروهاي غيرحرفه‌اي مي‌توانند برنامه‌هاي كوچكي توليد كنند، اما پروژه‌هاي نرم‌افزاري بزرگ هم به تخصص و تجربه زيادي نياز دارند. به صرف اين‌كه فردي تنها تحصيلات دانشگاهي عالي در رشته نرم‌افزار دارد نمي‌توان گفت كه مي‌تواند عضوي از تيم پروژه باشد. در انتخاب نيروهاي پروژه دقت كنيد، چون دليل از بين رفتن اغلب پروژه‌هاي نرم‌افزاري استفاده از نيروهاي غيرمتخصص است.

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

7. كاربران اصلي سيستم در طول مراحل طراحي نرم‌افزارها حضور ندارند، به همين دليل است كه وقتي نرم‌افزار آماده مي‌شود مي‌خواهند آن را تغيير دهند. كار آن‌ها مانند اين موضوع است كه تنها اندازه‌هاي خود را به خياط بدهيم و بگوييم حوصله پرو را نداريم. حاصل كار شايد لباسي باشد كه اندازهِ شما باشد، اما به احتمال خيلي زياد كارايي كافي را نخواهد داشت.

8. فرض كنيد نرم‌افزار عاري از اشكال است و در اختيار كاربر قرار مي‌گيرد. حال اگر كاربر به دليلي وقت خود را صرف ايرادگيري از سيستم كند يا اطلا‌عات مورد نياز را به آن وارد نكند پروژه نرم‌افزاري به نتيجه نخواهد رسيد. برخي از كاربران سيستم فكر مي‌كنند كه وظيفه برنامه‌نويس وارد كردن اطلاعات به سيستم است.

9. در كشورهاي صنعتي درصد مشكلات پروژه‌هاي نرم‌افزاري بسيار كمتر از كشور ما است. تجربه به ما نشان داده كه تقريباً بيست‌درصد از پروژه‌هاي نرم‌افزاري كوچك و حدود ده تا پانزده درصد از پروژه‌هاي نرم‌افزاري بزرگ مشكل دارند. در واقع اين پروژه‌ها آنقدر مشكل دارند كه نمي‌توان آن‌ها را اصلاح كرد.

جالب‌تر اين‌كه برخي از مديران پروژه‌هاي نرم‌افزاري كه پروژه‌‌هايشان با مشكل روبه‌رو مي‌شود، نمي‌خواهند اين واقعيت را بپذيرند كه نرم‌افزارشان مرده است و ديگر نمي‌توان كاري برايش انجام داد. به عنوان مثال، حدود دو سال پيش در يكي از سازمان‌هاي دولتي به وسيلهِ گروهي كه تخصص نرم‌افزاري نداشته و تنها فني بودند سيستمي طراحي شد و تيم نرم‌افزاري مسئوليت اجراي آن را به عهده گرفت.

بعد از آماده سازي محصول كاربر سيستم تغييرات زيادي در سيستم به وجود آورد كه ساختار كلي آن را تغيير داد و هنوز بعد از اين همه مدت هيچ‌گاه سيستم عملياتي نشده است. نمي‌توانيم تمامي اشكالات را به كاربر يا مدير پروژه نسبت بدهيم.

به نظر من اگر بتوانيم تمامي هشت نكته‌اي را كه در بالا اشاره شد، در نظر بگيريم، درصد كمتري از پروژه‌هاي نرم‌افزاري ما با شكست روبه‌رو مي‌شوند.

برگرفته از ماهنامه شبکه - ارديبهشت ۱۳۸۷ شماره 88 نویسنده: امين صفايي

podcast

پادکست چیست؟
پادکست چیزی شبیه یک شوی تلویزیونی است که با فرمت صدا منتشر میشود و شاید یک وبلاگ است که با فرمت صدا ایجاد میشه و نه بصورت متن. پادکست ها نیز مانند وبلاگ ها دارای موضوعات مختلفی هستند . ورزشی ، علمی ، تاریخی ، طنز ، خبری و غیره .
چیزی که در مورد پادکست ها جالب است حالت صوتی آن ها است که علاوه بر دارابودن جذابیت شنیداری شما را قادر میسازد تا آن را روی کامپوتر خود دانلود کنید و بعدا آن را روی PC و یا MP3-player خود گوش کنید. وقتی شما صدای شخص گوینده را به جای فونت های کامپیوتر میشنوید ، حس نزدیک تری نسبت به گوینده پادکست دارید که در متون یک وبلاگ به راحتی حس نمیشود. همین موضوع باعث رشد سرویس های بزرگی شده است که به شما پادکست رایگان میدهند.
سرویس های رایگان پادکست :
پرشین کست : اولین سرویس پادکست فارسی است که علاوه بر یک وبلاگ جمع و جور، یک پادکست نیز به شما میدهد که فایل های صوتی گفتارهای خود را درآن آپلود کنید و دیگران علاوه بر دیدن متن وبلاگ شما ، صدای شما را نیز بشنوند . شما میتوانید برای صدای پس زمینه پادکست خود از موسیقی های ملایم استفاده کنید تا پادکست جذاب تری داشته باشید. (امکانات سرویس پرشین کست)
تعدادی از پادکست های فعال این سرویس به شرح زیر است. بعد از وارد شدن در هر وبلاگ علاوه بر شنیدن پادکست، لینک دانلود پادکست ها نیز در دسترس است:
1 .::حرف آخر::.
2 حضور_1
3 ضد اخلاق
4 راديو صداي شرقي
5 مهر


چگونه پادکست خود را در موتور های جستجو ثبت کنیم ؟

سایت یاهو بزرگترین سرویس جستجو و ثبت پادکست ها را راه اندازی نموده است و شما را قادر میسازد تا در میان میلیون ها پادکست جستجو کنید . همچنین در این سایت شما میتوانید براحتی پادکست خود را با موضوع خاصی ثبت کنید. برای ثبت پادکست خود به آدرس podcasts.yahoo.com/publish مراجعه کنید و لینک فید پادکست خود را وارد کنید تا پادکست های شما نیز در نتایج جستجوی یاهو ظاهر شوند.


جهت دریافت اطلاعاتی بیشتر به لینک زیر مراجعه کنید ...

پادکست چیست؟


منبع .. میهن بلاگ

دسته بندی مطالب در بلاگر با استفاده از Delicious

يكي از مشكلاتي كه سرويس بلاگر داره ساپورت نكردن از امكان دسته بندی مطالب (categories) هست. امروز مي خوام روشي رو آموزش بدم كه با اون بشه توي پست ها تگ گذاري كرد.البته اين روش در مورد وبلاگهاي انگليسي جواب ميده و من هنوز روي وبلاگهاي فارسي امتحانش نكردم.

تگ چيست؟
تعريف هاي زيادي براي تگ وجود داره.اما ساده ترين و پركاربردترينش اينه كه شما براي هر پستتون يك برچسب مي زنيد.با اين كار لينك پست هايي كه مربوط به هم هستند توي يك صفحه (مثلا اكانت شما توي del.icio.us) مربوط به اون تگ قرار داده ميشه.تا مطالب وبلاگ داراي پيوشتگي باشن و خواننده وبلاگ شما بتونه به راحتي مطالب دلخواه خودش رو پيدا كنه.

del.icio.us چيست؟
يك سرويس رايگان
bookmarklet هست كه به كاربر اجازه ميده صفحات bookmark خودش رو با كي وردهاي دلخواهش توي صفحه اكانتش قرار بده.(http://del.icio.us/accountname)

براي تگ دار كردن مطالب وبلاگ چند تا روش وجود داره كه من يكي از ساده ترينها رو اينجا ميذارم.براي اين كار طبق روش زير عمل كنيد:
1.حسابي در سايت del.icio.us باز كنيد.
2.كدهاي زير رو توي قالبتون توي
footer وبلاگ كپي كنيد تا يك لينك براي اضافه كردن خودكار مطلب به سايت وجود داشته باشه:


[to Del.icio.us]


2.كدهاي زير رو با توجه به نام اكانتتون تغيير داده و اون رو توي يه جايي كه دسترس باشه توي يه صفحه
Html ذخيره كنيد.

Bookmark this:


Categories:%20';for(var%20i=0;i%200){a+=',%20';}a+=''+tr[i]+'';}a+='';prompt('Copy%20this%20code,%20press%20OK,%20then%20paste%20to%20your%20blog%20entry:',a);})()">Technorati delicious bookmarklet

3.زماني كه مطلبي رو پست مي كنيد صفحه اي رو كه قبلا ذخيره كرده بوديد رو باز كنيد و كي‌ورد مورد نظر رو براي اون پست بنويسيد.و OK رو فشار داده و نتيجه رو توي پستتون كپي كنيد.
4.به اكانتتون در سايت del.icio.us رفته و همون ك
ی‌ورد رو توي اكانتتون ايجاد كنيد.(اگر قبلا ايجاد نكرده بوديد)
5.حالا همه پستهاي شما كه داراي اون كي ورد هستند در يك صفحه در اكانت شما در سايت del.icio.us قرار گرفتند.