توصیه به عدم اصرار بر زبان یا پلتفرم برنامه‌نویسی خاص

شرح اینکه چرا به نظر ما اصرار بر پیاده سازی سایت با زبان یا پلتفرم توسعه‌ای خاص اشتباه است.

صفحه نخست » استدلالات تعاملات » توصیه به عدم اصرار بر زبان یا پلتفرم برنامه‌نویسی خاص

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

  • پلتفرم توسعه‌ای خاص :
    • لاراول
    • سیمفونی
    • دات نت
    • Node.js و React.js
  • زبان‌نویسی مشخص :
    • پی اچ پی
    • جاوا
    • سی شارپ
  • نرم‌افزار سی‌ام‌اس ویژه‌ : 
    • دروپال
    • مجنتو
    • لایف‌ری

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

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

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

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

زیرا نفر یا نفراتی آشنا با آن فناوری دارد

یعنی در تشکیلات خود، یک یا دو یا چند نفر را دارد که به آن زبان برنامه‌نویسی و یا به آن پلتفرم توسعه‌ای مسلطند و لذا می‌خواهد کا را با دانش فنش تشکیلاتی خود پیش ببرد.

زیرا سیستمهایی مبتنی بر آن فناوری دارد

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

زیرا زیرساخت‌هایی مطابق با آن فناوری دارد

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

و این را حق صاحب سایت می‌دانیم که درباره فناوری پیاده سازی سایت خود تصمیم بگیرد

زیرا معتقدیم : 

اما بنا به دلایل زیر، ما در شرکت داده‌ورزان، توصیه می‌کنیم

اصرار بر زبان برنامه‌نویسی یا پلتفرم خاص را، کنار بگذارید.

اینکه شما، با آن زبان یا پلتفرم مأنوسید، بمعنی توسعه‌پذیری آتی نیست!افزوده شده در ویرایش : سه‌شنبه ۰۲-۰۲-۱۳۹۹

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

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

اصرار بر زبان یا پلتفرم خاص، دامنه انتخاب شرکت طراح را، محدود می‌کند!افزوده شده در ویرایش : یکشنبه ۱۱-۰۷-۱۳۹۵

بزرگترین مشکل این کار، یعنی اصرار بر پیاده‌سازی وب سایت با زبان نامه‌نویسی مشخص یا مبتنی بر یک پلتفرم خاص، این است که دامنه انتخاب شما، درباره شرکت‌های طراح وب را محدود می‌کند و به جای اینکه، بین 1500 شرکت طراح وب، دست شما برای انتخاب شرکت طراح وبی، خوب، متعهد، پاسخگو، هنرمند، متخصص و باسابقه باز باشد، انتخاب شما، تنها به زیر ۵ شرکت! محدود می‌شود که ای بسا، ایشان نه چندان با سابقه باشند و نه چندان نمونه‌کارهای قوی داشته باشند و نه چندان خدمات ایشان با کیفیت یا پایدار باشد! اما مشکلات پیدا کردن شرکت طراح وب، هنگام اصرار بر زبان یا پلتفرم خاص، به همین‌جا محدود نمی‌شود :

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

اصولا باید بین طراحی سایت با توسعه وب اپلیکیشن، تفکیک قائل شوید!افزوده شده در ویرایش : چهارشنبه ۱۹-۱۰-۱۳۹۷

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

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

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

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

یکپارچگی سایت با سامانه‌های تشکیلاتی، در وردپرس بهتر حاصل است!افزوده شده در ویرایش : چهارشنبه ۲۸-۰۵-۱۴۰۰

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

  • مدت‌هاست برای اتصال و یکپارچه شدن دو نرم‌افزار، لازم نیست هر دو، لزوما روی یک زبان برنامه‌نویسی باشند : به عبارت دیگر، بهتر از ما می‌دانید که امروزه تمام نرم‌افزارهای استاندارد دنیا، از روش‌های PRC و SOAP و REST و GraphQL استفاده می‌کنند تا با یک نرم‌افزار بیگانه، ولو با هر زبان برنامه‌نویسی دیگر یا بر اساس هم پلتفرم توسعه‌ای متفاوت، امکان اتصال استاندارد و رد و بدل قاعده‌مند دیتا برقرار باشد. مگر اینکه، سامانه‌های درون تشکیلاتی شما، بر اساس استانداردهای روز دنیا، توسعه نیافته باشند.
  • اگر سامانه‌های نرم‌افزاری درون سازمانی را خریده‌اید، حتما شرکت توسعه‌دهنده، فکری برای یکپارچگی با سایت وردپرسی کرده است : به بیان روشنتر، وقتی وردپرس با 60,000 پلاگین و مورد استفاده واقع شدن به عنوان زیرساخت راه‌اندازی 43.5% کل وب‌سایت‌های دنیا، معروف‌ترین سی‌ام‌اس، با گسترده‌ترین دامنه است، سامانه نرم‌افزاری درون تشکیلاتی شما، اگر آن را از یک شرکت معتبر بین‌المللی یا داخلی خریده باشید، منطقا باید فکری برای یکپارچه شدن با وردپرس کرده باشد و پلاگینی مشترک به دست داده باشد. بسیاری از این 60,000پلاگین آماده، پلاگین‌های مشترک نرم‌افزارهای معتبر جهانی، برای یکپارچه شدن با وردپرس است. از آنجا که در اشل ایران هم، همین قاعده حکمفرماست و وردپرس، پادشاه سیستم‌های سایت ساز ایران هم هست، بسیاری نرم‌افزارهای داخلی هم همین رویه را، پیش گرفته‌اند.
  • اگر بحث شما API‌ است، وردپرس Full REST API Support است: بر فرض که شما درون تشکیلاتی یا در جایی دیگر، قصد توسعه موبایل اپلیکیشنی را دارید یا در حال توسعه وب اپلیکیشنی هستید که علت اصرار شما، بر استفاده از زبان یا پلتفرم خاص، برای سهولت اتصال به API، از طریق آن سیستم‌هاست، باید بگوییم جای هیچ نگرانی نیست و به علت ماهیت پشتیبانی کامل وردپرس از استاندارد REST، به راحتی و آسانی تمام، می‌توان از هر زبان یا پلتفرم دیگری، به آن متصل شد و اطلاعات را واکشی و رد و بدل نمود.

وردپرس مشکلی با، تطابق با سرور و فایروال‌ و زیرساخت‌ شبکه شما ندارد.افزوده شده در ویرایش : سه‌شنبه ۱۲-۱۲-۱۳۹۹

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

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

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

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

گاهی مشتری، شنیده است که فلان زبان نسبت به بهمان، قویتر است!افزوده شده در ویرایش : یکشنبه ۲۳-۰۳-۱۴۰۰

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

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

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

نباید از دامن سی‌ام‌اس‌های جهانی، به دام شرکت‌های ایرانی بیفیتید!افزوده شده در ویرایش : سه‌شنبه ۳۱-۰۴-۱۳۹۹

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

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

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

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

استدلالات تعاملات داده ورزان و شرح دلایل موجه شرکت داده ورزان بر توصیه به عدم اصرار بر زبان یا پلتفرم برنامه‌نویسی خاص - نباید از دامن سی‌ام‌اس‌های جهانی، به دام شرکت‌های ایرانی بیفیتید
استدلالات تعاملات داده ورزان و شرح دلایل موجه شرکت داده ورزان بر توصیه به عدم اصرار بر زبان یا پلتفرم برنامه‌نویسی خاص - برنامه‌نویسی اختصاصی و از صفر چیزی که آماده‌اش هست، غلط است

برنامه‌نویسی اختصاصی و از صفر چیزی که آماده‌اش هست، غلط است!افزوده شده در ویرایش : چهارشنبه ۱۵-۰۹-۱۳۹۶

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

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

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

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

امکانات عادی وردپرس، که نمی‌توانید در توسعه خاص به آنها برسید!افزوده شده در ویرایش : شنبه ۱۲-۰۳-۱۳۹۷

مشت نمونه خروار، از خودتان بپرسید، گیرم وب سایت اطلاع رسانی یا فروشگاهی‌ام را با زبان خاص یا بر بستر پلتفرم مشخص، راه‌اندازی کردم، آیا این امکانات، که روتین هر سایت وردپرسی است، را خواهم داشت یا برای تک تک اینها باید توسعه خاص دهم؟ 

  • بپرسید آیا در خروجی پروژه شما، برای حذف کردن فایل‌های یتیم، فکری شده است؟! همیشه وقتی شما عکس‌ها یا ویدیوهایی را روی سایت آپلود می‌کنید، آنها را، در صفحاتی به کار می‌گیرید. اما بسیار پیش می‌آید که پس از مدتی، صفحات مذکور، حذف یا منقضی می‌شوند، اما همچنان، آن فایل‌ها، روی سرور باقی می‌مانند. از آنجا که در وردپرس، وقتی مدیا در صفحه‌ای به کار گرفته می‌شود وردپرس، ارتباط دوسویه مدیا و صفحه را به خاطر می‌سپرد، لذا می‌تواند متوجه یتیم شدن فایل‌ها شود و می‌شود با یک کلیک، تمامی فایل‌های یتیم، که گاه حجم آنها بعد از چند سال به بیش از چند گیگ می‌رسد را، حذف نمود.
  • بپرسید آیا در خروجی پروژه شما، امکان مدیریت زنده تم و تغییر قالب صفحه اصلی و صفحات داخلی، توسط ادمین و به دلخواه خودش وجود دارد؟! در اکوسیستم معظم و جهانی وردپرس، صفحه‌سازهای معروفی هستند، نظیر المنتور و ویژوال کامپوزر و بیور بیلدر، که به ادمین، که هیچ دانش فنی HTML یا CSS‌‌ یا JavaSCript هم ندارد، این امکان را می‌دهند که بدون درگیر شدن با جزئیات فنی، از طریق یک پنل خوش‌دست بصری تحت وب، در قالب یک دیزاین استودیوی آنلاین، محتوا و عکس را مستقیما لایو از روی صفحات ظاهر سایت، ویرایش کند و بتواند با کشیدن و رها کردن، سکشنی به صفحه بیفزاید، حذف کند یا جابجا کند و بدون دغدغه به هم ریزی سایت، به دلخواه خودش، دست در تم و قالب صفحه اصلی یا صفحات داخلی ببرد.
  • بپرسید آیا در خروجی پروژه شما، سامانه فرم‌ساز، از ویژگی منطق شرطی پشتیبانی می‌کند؟! در افزونه‌های فرم‌ساز وردپرس مثل گراویتی فرم، شما به راحتی می‌توانید، نمایش هر تعداد فیلد فرم را، وابسته به انتخاب یا عدم انتخاب یکی از مقادیر پاسخ‌های فیلد دیگر بکنید. مثلا وقتی کاربر، جنسیت خود را روی مونث گذاشت، تمامی سوالات مربوط به نظام وظیفه، خاموش شود یا وقتی کاربر انتخاب کرد که مجرد است، آن مراحلی از فرم ویزاردی چند مرحله‌ای که سوالات زیادی را درباره متاهلین می‌پرسد، کلا از مراحل ویزارد، خاموش شوند.
  • بپرسید آیا در خروجی پروژه شما، امکان آپدیت اتوماتیک ایکس‌ام‌ال سایت مپ گوگل، دیده شده است؟! وردپرس بر اساس آخرین آپدیت‌هایی که ادمین می‌کند، یک فایل استاندارد ایکس‌ام‌ال را به صورت خودکار به روز می‌کند که سایت شما از طریق آن، به گوگل خود ابرازی می‌نماید، که اخیرا چه صفحاتی اضافه شده‌اند و یا بروزرسانی گردیده‌اند. به این ترتیب گوگل، به جای گشت زدن در لینک‌های سایت شما، برای یافتن آپدیت‌های جدید، به صورت خودکار از آخرین بروزرسانی‌های شما، خبردار می‌شود.
استدلالات تعاملات داده ورزان و شرح دلایل موجه شرکت داده ورزان بر توصیه به عدم اصرار بر زبان یا پلتفرم برنامه‌نویسی خاص - امکانات عادی وردپرس، که نمی‌توانید در توسعه خاص به آنها برسید
استدلالات تعاملات داده ورزان و شرح دلایل موجه شرکت داده ورزان بر توصیه به عدم اصرار بر زبان یا پلتفرم برنامه‌نویسی خاص - با تفکیک از اپ، روی سایت که ابزار برندسازی و بازاریابی است زوم کنید

با تفکیک از اپ، روی سایت که ابزار برندسازی و بازاریابی است زوم کنید!افزوده شده در ویرایش : شنبه ۰۶-۰۶-۱۴۰۰

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

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

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

این جهان همچون درختست ای کرام ... ما برو چون میوه‌های نیم‌خام!سخت گیرد خامها مر شـــــاخ را ... زانک در خامی نشاید کـــــاخ را

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

پرسش‌های متداول مرتبط با موضوع اصرار بر زبان برنامه نویسی یا پلتفرم توسعه‌ای خاص

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

با تمام این توصیفات، اگر ما همچنان بر همان زبان برنامه نویسی و یا پلتفرم توسعه‌ای خود اصرار داشته باشیم، چه می‌کنید؟

در این صورت، محترمانه از پذیرش پروژه و همکاری با شما استنکاف خواهیم ورزید و شما را به سمت دیگر شرکت های طراح وب هدایت خواهیم کرد.

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

از ما بپرسید

  • نکته : اگر می‌خواهید تخمین زمان و هزینه اجرای پروژه طراحی وب خود را بپرسید، لطفا به جای این فرم، فرم درخواست پیش‌فاکتور را تکمیل نمایید.
  • این قسمت برای اهداف اعتبارسنجی است و باید بدون تغییر باقی بماند.