پروژه اپن سورس CloudEshkaf

by MDP 23. October 2011 14:38

سلام.

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

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

تعریف پروژه :

نام پروژه :

این پروژه فعلا به اسم CloudEshkaf نام گذاری شده.

این اسم تکشیل شده از دو اسم Cloud به معنی ابر و Eshkaf به معنی گنجینه هست.سعی داشتم که اسم فارسی خوبی انتخاب کنم و این اسم به نظرم اومد.

ایده شکلگیری :

ایده اصلی تشکیل این پروژه زمانی برای من اینجاد شد که قصد داشتم داخل شرکت از یکسری از Bookmark های Browser داخل منزلم یک لینکی رو استخراج کنم.

این پروژه برای رفع این جور مشکلات ابداع شده.

اهداف :

هدف کلی ایجاد یک وبسایت با امکان ذخیره کردن Bookmark های کاربر هست.

در این سایت ما به کاربر اجازه ثبت نام ، وارد کردن Bookmark ها ، ساخنه پوشه های دلخواه ، مدیریت پوشه ها و دسته بندی پوشه ها رو خواهیم داد.

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

مثل Extension های Browser های مختلف و یا Application های Mobile هست.

مرحله های بعدی هم ساخت Application های مختلف برای Sync کردن اطلاعات با کامپیوتر و یا موبایل کاربر هست.

 

تکنلوژی و سکوی نرم افزاری :

برای پیاده سازی از سکوی نرم افزاری ویندوز استفاده خواهیم کرد، .Net Framwork 4.0 و همچنین معماری SOA.

متد مورد استفاده برای Modeling هم UML خواهد بود.که من ابزار خود ماکروسافت رو پیشنهاد میدم.چون هم راحت به Source Control متصل میشه و هم به Task ها راحت Assign میشه.

  

سورس :‌

برای Source Control  و بقیه مباحث مربوط به Source از CodePlex استفاده میکنیم.

البته اگه جای بهتری معرفی کنید و بهتر باشه قابل تغییر هم هست.

 

اطلاع رسانی :

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

 

تیم :

برای تعداد افراد تیم فعلا محدودتی وجود نداره.

سطح تحلیل و طراحی سیستم هم اونقدر پیچیده نیست ولی بازم من ترجیح میدم حتمی تیمی برای تحلیل و طراحی داشته باشیم.

تیم Develop حداقل به 3 نفر دیگه احتیاج داره ( به نظر من )

برای خروجی بهتر به یک طراح UI که مسلط به UX باشه نیاز داریم.

برای مدیریت پروژه هم به یک نفر احتیاج داریم که امید وارم گزارش کار نخواد Smile

 تاریخ شروع به کار 7 آبان خواهد بود.من از اون تاریخ به بعد کار رو شروع می کنم.امید وارم بتونم از همکاری شما استفاده کنم.

 

مدیریت پروژه :

برای انجام بهتر کار های و مدیریت دقیق تر روی وظایف از یک نرمافزار مدیریت پروژه آنلاین استفاده خواهیم کرد ( اینجا )

 

پشتیبانی سخت افزاری :

من فعلا برای پروژه یک Shared Host تهیه کردم ولی امید وارم بتونیم با گرفتن یک اسپانسر خوب تبدیلش کنیم به یک VPS مناسب.

دامین های CloudEshkaf.com و CloudEshkaf.ir هم ثبت شده اند.

 

این پروژه کاملا به صورت متن باز خواهد بود.

لطفا کسایی که علاقه مند به همکاری در این پروژه هستند یا درکامنت ها و یا با ایمیل (  ) با من در ارتباط باشن.

لطفا دوستان بلاگر برای اطلاع رسانی این پست رو Share کنید.

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

طبق معمول همیشه ،درهای پیشنهاد و انتقاد باز هست.

 

Tags:

نتیجه نظرسنجی لزوم داشتن Laptop برای Developer ها.

by MDP 22. October 2011 16:02

بعد از حدود 3 ماه نظر سنجی که روی وبلاگم قرار دادم ، نتیجه زیر در مورد داشتن یک Laptop برای برنامه نویس ها بدست اومد.

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

لطفا در نظرسنجی جدید شرکت کنید.

Tags: ,

General | Work

UX یا UI مساله این است ، روز جهانی کاربردپذیری

by MDP 17. October 2011 18:40

این روز ها همه وبسایت طراحی می کنند ، شما چه طور ؟

این مطلب رو به دو دلیل میخوام بنویسم.

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

دومین دلیلش هم اینه که من برای وبلاگم دنبال یه طراح UI که به UX وارد باشه می گردم.

شما کسی رو می شناسید ؟

Tags:

General

ASP.Net Custom Server Control Property Collection

by MDP 16. October 2011 11:56

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

مثلا کنترل های 

  • Grid
  • Search Textbox
  • ...
برای این کار شما فقط باید داخل یک کلاس از کلاس والدی مثل WebControl ارث بری کنید.
 
برای مثال شما برای کارتون قراره یک TextBox ایجاد کنید که با تایپ درونش قبل از LostFocus شدن از تکراری نبودن اطلاعات  درونش اطمینان حاصل کنید.
به طور پیش فرش میشه این کار رو با چند خط کد جاوااسکریپت و یک سرویس ساده پیاده سازی کرد.
ولی شما به این کنترل احتیاج دارید و استفاده زیادی ازش می کنید.ژس منطقی نیست که هر دفعه این کد ها نوشته بشه.
شما می تونید به راحتی این کار رو انجام بدید.با یم سرچ ساده به اطلاعات کامل و خوبی می رسید.
 
احتمالا تا حالا به Property های داخل یک کنترل برخوردید که داخل بدنه کنترل نوشته میشن.
مثل این :
 
<asp:BulletedList runat="server" ID="bltList">
        <asp:ListItem Enabled="true" Selected="False" Text="text1" Value="text1value" />
        <asp:ListItem Enabled="true" Selected="False" Text="text2" Value="text2value" />
        <asp:ListItem Enabled="true" Selected="False" Text="text3" Value="text3value" />
 </asp:BulletedList>
 
برای ساختن کنترل هایی که بتونن به عنوان پراپرتی از شما اطلاعات بگیرن و زمان رندر از اونا استفاده کنن روشی وجود داره.
در مثال بالا BulletedList یک کنترل ASP.Net هست که مقادیر خودش رو داره و در کلاس BulletedList وجود دارند.
نکته اصلی اینجاست که ListItem ها هم کلاسی هست که مشخصات و پراپرتی های خودش رو داره.
ولی برای اینکه داخل BulletedList قابل شناسایی باشه شما باید یک پراپرتی از نوع اون کلاس مورد نظر ( در اینجا ListItem( و به صورت List تعریف کنید.
برای اینکه به کنترل بفهمونید که این لیست حاویه اطلاعات مختصل این کنترل هست و باید از توی Designer خونده بشن باید Attribute زیر رو هم به پراپرتی بدید :
 
[PersistenceMode(PersistenceMode.InnerProperty)]
public List<searchTextBoxEvent> SearchTextBoxEvents { get; set; }
 
 
برای اینکه کلاس والد بفهمه که باید پراپرتی های داخلی خودش رو هم چک کنه باید به کلاس والد Attribute زیر رو هم داشته باشه :
 
 
[ParseChildren(true)]
public class SearchTextbox : WebControl
{
 //...
}

Tags:

.Net | ASP.Net

همسان کردن اطلاعات تیم.

by MDP 16. October 2011 11:30

چند وقتیه که توی شرکت ، کلاس هایی برگذار میشه با عنوان های‌:

  • ASP.Net
  • Advanced C#
  • JavaScript
  • MS SQL Server
وقتی برای اولین بار ایمیل برگذاری این کلاس ها برای من اومد به شدت بهم برخورد.مطالب بسیار ساده و عادی بودن که هر برنامه نویس و توسعه دهنده تازه کاری اونا رو می دونست.
ناراحتی من ادامه داشت تا جلسه اول کلاس.
آیدین ( معاون محصول شرکت ، البته اسم ایشون آیدین توکل هست که بچه ها آیدین صداش می کنن ) اول جلسه همین موضوع رو عنوان کرد و گفت ما همه این موضوعات رو بلدیم و اطلاعاتمون کامله ولی هدف اصلی این کلاس همسان کردن دانش افراده و یکی کردن درک ها از موضوعات مختلف.
 
حالا بعد از تمام شدن کلاس های دور اول چیز های خیلی جالبی از بازخورد این کلاس رو من توی شرکت می بینم.
وقتی با همکاری در مورد بخش خاصی صحبت می کنیم همه رفرنس اطلاعات خودشون رو به اون کلاس می دن و در نتیجه بحث زود تر و دقیق تر به نتیجه میرسه.
 
در تیم های بزرگ یکی از اصلی ترین دلایل پیش رفت هم سطح بودن اطلاعات هست.در این جور تیم ها شما لازم نیست وقی به همکارتون برای حل مشکلش راهی پیشنهاد میدید نگران این باشید که فرد مورد نظر از روشی که شما گفتید اطلاعاتی داره یا نه.شما فقط راهکاری که توی ذهن خودتون هست و به ذهن کسی نرسیده و یا راهکاری که بر اساس تجربه به دست اوردید رو به اشتراک میزارید.
 
تنها مساله مهم اینه که هیچ وقت فراموش نکنید ، این جور دوره ها جای جنگ اطلاعات نیست، چون همیشه شرکت ها برای کارشون یک سری محدودیت هایی تائین می کنن که شاید در دنیای واقعی محدودیت نباشه ( مثلا در چارگون استفاده از کوکی حرام است !‌:)‌ )

Tags:

Work

My Groups

Poll

از چه پلتفرمی برای توسعه استفاده می کنید



Show Results

Month List