{"global":{"lastError":{},"locale":"en","locales":{"data":[{"id":"de","name":"Deutsch"},{"id":"en","name":"English"}],"loading":false,"error":false},"currency":{"id":49,"name":"EUR"},"currencies":{"data":[{"id":49,"name":"EUR"},{"id":124,"name":"RUB"},{"id":153,"name":"UAH"},{"id":155,"name":"USD"}],"loading":false,"error":false},"translations":{"company":{"role-vendor":{"en":"Vendor","ru":"Производитель","_type":"localeString"},"role-supplier":{"ru":"Поставщик","_type":"localeString","en":"Supplier"},"products-popover":{"de":"die produkte","ru":"Продукты","_type":"localeString","en":"Products"},"introduction-popover":{"ru":"внедрения","_type":"localeString","en":"introduction"},"partners-popover":{"ru":"партнеры","_type":"localeString","en":"partners"},"update-profile-button":{"ru":"Обновить профиль","_type":"localeString","en":"Update profile"},"read-more-button":{"_type":"localeString","en":"Show more","ru":"Показать ещё"},"hide-button":{"en":"Hide","ru":"Скрыть","_type":"localeString"},"user-implementations":{"ru":"Внедрения","_type":"localeString","en":"Deployments"},"categories":{"ru":"Компетенции","_type":"localeString","en":"Categories"},"description":{"ru":"Описание","_type":"localeString","en":"Description"},"role-user":{"ru":"Пользователь","_type":"localeString","en":"User"},"partnership-vendors":{"_type":"localeString","en":"Partnership with vendors","ru":"Партнерство с производителями"},"partnership-suppliers":{"ru":"Партнерство с поставщиками","_type":"localeString","en":"Partnership with suppliers"},"reference-bonus":{"ru":"Бонус за референс","_type":"localeString","en":"Bonus 4 reference"},"partner-status":{"ru":"Статус партнёра","_type":"localeString","en":"Partner status"},"country":{"ru":"Страна","_type":"localeString","en":"Country"},"partner-types":{"_type":"localeString","en":"Partner types","ru":"Типы партнеров"},"branch-popover":{"_type":"localeString","en":"branch","ru":"область деятельности"},"employees-popover":{"ru":"количество сотрудников","_type":"localeString","en":"number of employees"},"partnership-programme":{"ru":"Партнерская программа","_type":"localeString","en":"Partnership program"},"partner-discounts":{"en":"Partner discounts","ru":"Партнерские скидки","_type":"localeString"},"registered-discounts":{"_type":"localeString","en":"Additional benefits for registering a deal","ru":"Дополнительные преимущества за регистрацию сделки"},"additional-advantages":{"_type":"localeString","en":"Additional Benefits","ru":"Дополнительные преимущества"},"additional-requirements":{"en":"Partner level requirements","ru":"Требования к уровню партнера","_type":"localeString"},"certifications":{"ru":"Сертификация технических специалистов","_type":"localeString","en":"Certification of technical specialists"},"sales-plan":{"ru":"Годовой план продаж","_type":"localeString","en":"Annual Sales Plan"},"partners-vendors":{"ru":"Партнеры-производители","_type":"localeString","en":"Partners-vendors"},"partners-suppliers":{"en":"Partners-suppliers","ru":"Партнеры-поставщики","_type":"localeString"},"all-countries":{"en":"All countries","ru":"Все страны","_type":"localeString"},"supplied-products":{"ru":"Поставляемые продукты","_type":"localeString","en":"Supplied products"},"vendored-products":{"en":"Produced products","ru":"Производимые продукты","_type":"localeString"},"vendor-implementations":{"en":"Produced deployments","ru":"Производимые внедрения","_type":"localeString"},"supplier-implementations":{"_type":"localeString","en":"Supplied deployments","ru":"Поставляемые внедрения"},"show-all":{"ru":"Показать все","_type":"localeString","en":"Show all"},"not-yet-converted":{"ru":"Данные модерируются и вскоре будут опубликованы. Попробуйте повторить переход через некоторое время.","_type":"localeString","en":"Data is moderated and will be published soon. Please, try again later."},"schedule-event":{"_type":"localeString","en":"Events schedule","ru":"Pасписание событий"},"implementations":{"_type":"localeString","en":"Deployments","ru":"Внедрения"},"register":{"en":"Register","ru":"Регистрация ","_type":"localeString"},"login":{"ru":"Вход","_type":"localeString","en":"Login"},"auth-message":{"ru":"Для просмотра ивентов компании авторизируйтесь или зарегистрируйтесь на сайт.","_type":"localeString","en":"To view company events please log in or register on the sit."},"company-presentation":{"en":"Company presentation","ru":"Презентация компании","_type":"localeString"}},"header":{"help":{"de":"Hilfe","ru":"Помощь","_type":"localeString","en":"Help"},"how":{"de":"Wie funktioniert es","ru":"Как это работает","_type":"localeString","en":"How does it works"},"login":{"de":"Einloggen","ru":"Вход","_type":"localeString","en":"Log in"},"logout":{"ru":"Выйти","_type":"localeString","en":"Sign out"},"faq":{"en":"FAQ","de":"FAQ","ru":"FAQ","_type":"localeString"},"references":{"de":"References","ru":"Мои запросы","_type":"localeString","en":"Requests"},"solutions":{"_type":"localeString","en":"Solutions","ru":"Возможности"},"find-it-product":{"_type":"localeString","en":"Selection and comparison of IT product","ru":"Подбор и сравнение ИТ продукта"},"autoconfigurator":{"_type":"localeString","en":" Price calculator","ru":"Калькулятор цены"},"comparison-matrix":{"ru":"Матрица сравнения","_type":"localeString","en":"Comparison Matrix"},"roi-calculators":{"ru":"ROI калькуляторы","_type":"localeString","en":"ROI calculators"},"b4r":{"ru":"Бонус за референс","_type":"localeString","en":"Bonus for reference"},"business-booster":{"ru":"Развитие бизнеса","_type":"localeString","en":"Business boosting"},"catalogs":{"ru":"Каталоги","_type":"localeString","en":"Catalogs"},"products":{"_type":"localeString","en":"Products","ru":"Продукты"},"implementations":{"_type":"localeString","en":"Deployments","ru":"Внедрения"},"companies":{"en":"Companies","ru":"Компании","_type":"localeString"},"categories":{"_type":"localeString","en":"Categories","ru":"Категории"},"for-suppliers":{"en":"For suppliers","ru":"Поставщикам","_type":"localeString"},"blog":{"ru":"Блог","_type":"localeString","en":"Blog"},"agreements":{"ru":"Сделки","_type":"localeString","en":"Deals"},"my-account":{"ru":"Мой кабинет","_type":"localeString","en":"My account"},"register":{"_type":"localeString","en":"Register","ru":"Зарегистрироваться"},"comparison-deletion":{"en":"Deletion","ru":"Удаление","_type":"localeString"},"comparison-confirm":{"ru":"Подтвердите удаление","_type":"localeString","en":"Are you sure you want to delete"},"search-placeholder":{"_type":"localeString","en":"Enter your search term","ru":"Введите поисковый запрос"},"my-profile":{"ru":"Мои данные","_type":"localeString","en":"My profile"},"about":{"en":"About Us","_type":"localeString"},"it_catalogs":{"_type":"localeString","en":"IT catalogs"},"roi4presenter":{"en":"Roi4Presenter","_type":"localeString"},"roi4webinar":{"_type":"localeString","en":"Pitch Avatar"},"sub_it_catalogs":{"en":"Find IT product","_type":"localeString"},"sub_b4reference":{"en":"Get reference from user","_type":"localeString"},"sub_roi4presenter":{"en":"Make online presentations","_type":"localeString"},"sub_roi4webinar":{"en":"Create an avatar for the event","_type":"localeString"},"catalogs_new":{"en":"Products","_type":"localeString"},"b4reference":{"_type":"localeString","en":"Bonus4Reference"},"it_our_it_catalogs":{"en":"Our IT Catalogs","_type":"localeString"},"it_products":{"_type":"localeString","en":"Find and compare IT products"},"it_implementations":{"en":"Learn implementation reviews","_type":"localeString"},"it_companies":{"en":"Find vendor and company-supplier","_type":"localeString"},"it_categories":{"_type":"localeString","en":"Explore IT products by category"},"it_our_products":{"_type":"localeString","en":"Our Products"},"it_it_catalogs":{"_type":"localeString","en":"IT catalogs"}},"footer":{"copyright":{"de":"Alle rechte vorbehalten","ru":"Все права защищены","_type":"localeString","en":"All rights reserved"},"company":{"en":"My Company","de":"Über die Firma","ru":"О компании","_type":"localeString"},"about":{"en":"About us","de":"Über uns","ru":"О нас","_type":"localeString"},"infocenter":{"de":"Infocenter","ru":"Инфоцентр","_type":"localeString","en":"Infocenter"},"tariffs":{"_type":"localeString","en":"Subscriptions","de":"Tarife","ru":"Тарифы"},"contact":{"en":"Contact us","de":"Kontaktiere uns","ru":"Связаться с нами","_type":"localeString"},"marketplace":{"en":"Marketplace","de":"Marketplace","ru":"Marketplace","_type":"localeString"},"products":{"_type":"localeString","en":"Products","de":"Produkte","ru":"Продукты"},"compare":{"_type":"localeString","en":"Pick and compare","de":"Wähle und vergleiche","ru":"Подобрать и сравнить"},"calculate":{"_type":"localeString","en":"Calculate the cost","de":"Kosten berechnen","ru":"Расчитать стоимость"},"get_bonus":{"de":"Holen Sie sich einen Rabatt","ru":"Бонус за референс","_type":"localeString","en":"Bonus for reference"},"salestools":{"de":"Salestools","ru":"Salestools","_type":"localeString","en":"Salestools"},"automatization":{"de":"Abwicklungsautomatisierung","ru":"Автоматизация расчетов","_type":"localeString","en":"Settlement Automation"},"roi_calcs":{"_type":"localeString","en":"ROI calculators","de":"ROI-Rechner","ru":"ROI калькуляторы"},"matrix":{"_type":"localeString","en":"Comparison matrix","de":"Vergleichsmatrix","ru":"Матрица сравнения"},"b4r":{"de":"Rebate 4 Reference","ru":"Rebate 4 Reference","_type":"localeString","en":"Rebate 4 Reference"},"our_social":{"de":"Unsere sozialen Netzwerke","ru":"Наши социальные сети","_type":"localeString","en":"Our social networks"},"subscribe":{"en":"Subscribe to newsletter","de":"Melden Sie sich für den Newsletter an","ru":"Подпишитесь на рассылку","_type":"localeString"},"subscribe_info":{"ru":"и узнавайте первыми об акциях, новых возможностях и свежих обзорах софта","_type":"localeString","en":"and be the first to know about promotions, new features and recent software reviews"},"policy":{"ru":"Политика конфиденциальности","_type":"localeString","en":"Privacy Policy"},"user_agreement":{"ru":"Пользовательское соглашение ","_type":"localeString","en":"Agreement"},"solutions":{"_type":"localeString","en":"Solutions","ru":"Возможности"},"find":{"ru":"Подбор и сравнение ИТ продукта","_type":"localeString","en":"Selection and comparison of IT product"},"quote":{"ru":"Калькулятор цены","_type":"localeString","en":"Price calculator"},"boosting":{"ru":"Развитие бизнеса","_type":"localeString","en":"Business boosting"},"4vendors":{"_type":"localeString","en":"4 vendors","ru":"поставщикам"},"blog":{"_type":"localeString","en":"blog","ru":"блог"},"pay4content":{"en":"we pay for content","ru":"платим за контент","_type":"localeString"},"categories":{"_type":"localeString","en":"categories","ru":"категории"},"showForm":{"ru":"Показать форму","_type":"localeString","en":"Show form"},"subscribe__title":{"_type":"localeString","en":"We send a digest of actual news from the IT world once in a month!","ru":"Раз в месяц мы отправляем дайджест актуальных новостей ИТ мира!"},"subscribe__email-label":{"_type":"localeString","en":"Email","ru":"Email"},"subscribe__name-label":{"_type":"localeString","en":"Name","ru":"Имя"},"subscribe__required-message":{"en":"This field is required","ru":"Это поле обязательное","_type":"localeString"},"subscribe__notify-label":{"en":"Yes, please, notify me about news, events and propositions","ru":"Да, пожалуйста уведомляйте меня о новостях, событиях и предложениях","_type":"localeString"},"subscribe__agree-label":{"ru":"Подписываясь на рассылку, вы соглашаетесь с %TERMS% и %POLICY% и даете согласие на использование файлов cookie и передачу своих персональных данных*","_type":"localeString","en":"By subscribing to the newsletter, you agree to the %TERMS% and %POLICY% and agree to the use of cookies and the transfer of your personal data"},"subscribe__submit-label":{"ru":"Подписаться","_type":"localeString","en":"Subscribe"},"subscribe__email-message":{"en":"Please, enter the valid email","ru":"Пожалуйста, введите корректный адрес электронной почты","_type":"localeString"},"subscribe__email-placeholder":{"ru":"username@gmail.com","_type":"localeString","en":"username@gmail.com"},"subscribe__name-placeholder":{"en":"Last, first name","ru":"Имя Фамилия","_type":"localeString"},"subscribe__success":{"en":"You are successfully subscribed! Check you mailbox.","ru":"Вы успешно подписаны на рассылку. Проверьте свой почтовый ящик.","_type":"localeString"},"subscribe__error":{"_type":"localeString","en":"Subscription is unsuccessful. Please, try again later.","ru":"Не удалось оформить подписку. Пожалуйста, попробуйте позднее."},"roi4presenter":{"ru":"roi4presenter","_type":"localeString","en":"Roi4Presenter","de":"roi4presenter"},"it_catalogs":{"_type":"localeString","en":"IT catalogs"},"roi4webinar":{"_type":"localeString","en":"Pitch Avatar"},"b4reference":{"en":"Bonus4Reference","_type":"localeString"}},"breadcrumbs":{"home":{"_type":"localeString","en":"Home","ru":"Главная"},"companies":{"ru":"Компании","_type":"localeString","en":"Companies"},"products":{"en":"Products","ru":"Продукты","_type":"localeString"},"implementations":{"ru":"Внедрения","_type":"localeString","en":"Deployments"},"login":{"ru":"Вход","_type":"localeString","en":"Login"},"registration":{"_type":"localeString","en":"Registration","ru":"Регистрация"},"b2b-platform":{"ru":"Портал для покупателей, поставщиков и производителей ИТ","_type":"localeString","en":"B2B platform for IT buyers, vendors and suppliers"}},"comment-form":{"title":{"en":"Leave comment","ru":"Оставить комментарий","_type":"localeString"},"firstname":{"en":"First name","ru":"Имя","_type":"localeString"},"lastname":{"ru":"Фамилия","_type":"localeString","en":"Last name"},"company":{"ru":"Компания","_type":"localeString","en":"Company name"},"position":{"en":"Position","ru":"Должность","_type":"localeString"},"actual-cost":{"ru":"Фактическая стоимость","_type":"localeString","en":"Actual cost"},"received-roi":{"ru":"Полученный ROI","_type":"localeString","en":"Received ROI"},"saving-type":{"_type":"localeString","en":"Saving type","ru":"Тип экономии"},"comment":{"_type":"localeString","en":"Comment","ru":"Комментарий"},"your-rate":{"ru":"Ваша оценка","_type":"localeString","en":"Your rate"},"i-agree":{"ru":"Я согласен","_type":"localeString","en":"I agree"},"terms-of-use":{"en":"With user agreement and privacy policy","ru":"С пользовательским соглашением и политикой конфиденциальности","_type":"localeString"},"send":{"ru":"Отправить","_type":"localeString","en":"Send"},"required-message":{"_type":"localeString","en":"{NAME} is required filed","ru":"{NAME} - это обязательное поле"}},"maintenance":{"title":{"ru":"На сайте проводятся технические работы","_type":"localeString","en":"Site under maintenance"},"message":{"en":"Thank you for your understanding","ru":"Спасибо за ваше понимание","_type":"localeString"}}},"translationsStatus":{"company":"success"},"sections":{},"sectionsStatus":{},"pageMetaData":{"company":{"translatable_meta":[{"name":"title","translations":{"ru":"Компания","_type":"localeString","en":"Company"}},{"name":"description","translations":{"ru":"Описание компании","_type":"localeString","en":"Company description"}},{"name":"keywords","translations":{"_type":"localeString","en":"Company keywords","ru":"Ключевые слова для компании"}}],"title":{"ru":"ROI4CIO: Компания","_type":"localeString","en":"ROI4CIO: Company"},"meta":[{"name":"og:image","content":"https://roi4cio.com/fileadmin/templates/roi4cio/image/roi4cio-logobig.jpg"},{"name":"og:type","content":"website"}]}},"pageMetaDataStatus":{"company":"success"},"subscribeInProgress":false,"subscribeError":false},"auth":{"inProgress":false,"error":false,"checked":true,"initialized":false,"user":{},"role":null,"expires":null},"products":{"productsByAlias":{},"aliases":{},"links":{},"meta":{},"loading":false,"error":null,"useProductLoading":false,"sellProductLoading":false,"templatesById":{},"comparisonByTemplateId":{}},"filters":{"filterCriterias":{"loading":false,"error":null,"data":{"price":{"min":0,"max":6000},"users":{"loading":false,"error":null,"ids":[],"values":{}},"suppliers":{"loading":false,"error":null,"ids":[],"values":{}},"vendors":{"loading":false,"error":null,"ids":[],"values":{}},"roles":{"id":200,"title":"Roles","values":{"1":{"id":1,"title":"User","translationKey":"user"},"2":{"id":2,"title":"Supplier","translationKey":"supplier"},"3":{"id":3,"title":"Vendor","translationKey":"vendor"}}},"categories":{"flat":[],"tree":[]},"countries":{"loading":false,"error":null,"ids":[],"values":{}}}},"showAIFilter":false},"companies":{"companiesByAlias":{"wilson-tech-pro-inc":{"id":10081,"title":"Wilson Tech Pro Inc","logoURL":"https://old.roi4cio.com/uploads/roi/company/OIP_1.png","alias":"wilson-tech-pro-inc","address":"2159 Brewer Road","roles":[{"id":2,"type":"supplier"},{"id":3,"type":"vendor"}],"description":"TEch","companyTypes":["supplier","vendor"],"products":{},"vendoredProductsCount":0,"suppliedProductsCount":0,"supplierImplementations":[],"vendorImplementations":[],"userImplementations":[],"userImplementationsCount":0,"supplierImplementationsCount":0,"vendorImplementationsCount":0,"vendorPartnersCount":0,"supplierPartnersCount":0,"b4r":1,"categories":{"4":{"id":4,"title":"Data center","description":" A data center (or datacenter) is a facility composed of networked computers and storage that businesses or other organizations use to organize, process, store and disseminate large amounts of data. A business typically relies heavily upon the applications, services and data contained within a data center, making it a focal point and critical asset for everyday operations.\r\nData centers are not a single thing, but rather, a conglomeration of elements. At a minimum, data centers serve as the principal repositories for all manner of IT equipment, including servers, storage subsystems, networking switches, routers and firewalls, as well as the cabling and physical racks used to organize and interconnect the IT equipment. A data center must also contain an adequate infrastructure, such as power distribution and supplemental power subsystems, including electrical switching; uninterruptable power supplies; backup generators and so on; ventilation and data center cooling systems, such as computer room air conditioners; and adequate provisioning for network carrier (telco) connectivity. All of this demands a physical facility with physical security and sufficient physical space to house the entire collection of infrastructure and equipment.","materialsDescription":" <span style=\"font-weight: bold;\">What are the requirements for modern data centers?</span>\r\nModernization and data center transformation enhances performance and energy efficiency.\r\nInformation security is also a concern, and for this reason a data center has to offer a secure environment which minimizes the chances of a security breach. A data center must therefore keep high standards for assuring the integrity and functionality of its hosted computer environment.\r\nIndustry research company International Data Corporation (IDC) puts the average age of a data center at nine years old. Gartner, another research company, says data centers older than seven years are obsolete. The growth in data (163 zettabytes by 2025) is one factor driving the need for data centers to modernize.\r\nFocus on modernization is not new: Concern about obsolete equipment was decried in 2007, and in 2011 Uptime Institute was concerned about the age of the equipment therein. By 2018 concern had shifted once again, this time to the age of the staff: "data center staff are aging faster than the equipment."\r\n<span style=\"font-style: italic;\"><span style=\"font-weight: bold;\">Meeting standards for data centers</span></span>\r\nThe Telecommunications Industry Association's Telecommunications Infrastructure Standard for Data Centers specifies the minimum requirements for telecommunications infrastructure of data centers and computer rooms including single tenant enterprise data centers and multi-tenant Internet hosting data centers. The topology proposed in this document is intended to be applicable to any size data center.\r\nTelcordia GR-3160, NEBS Requirements for Telecommunications Data Center Equipment and Spaces, provides guidelines for data center spaces within telecommunications networks, and environmental requirements for the equipment intended for installation in those spaces. These criteria were developed jointly by Telcordia and industry representatives. They may be applied to data center spaces housing data processing or Information Technology (IT) equipment. The equipment may be used to:\r\n<ul><li>Operate and manage a carrier's telecommunication network</li><li>Provide data center based applications directly to the carrier's customers</li><li>Provide hosted applications for a third party to provide services to their customers</li><li>Provide a combination of these and similar data center applications</li></ul>\r\n<span style=\"font-style: italic;\"><span style=\"font-weight: bold;\">Data center transformation</span></span>\r\nData center transformation takes a step-by-step approach through integrated projects carried out over time. This differs from a traditional method of data center upgrades that takes a serial and siloed approach. The typical projects within a data center transformation initiative include standardization/consolidation, virtualization, automation and security.\r\n<ul><li>Standardization/consolidation: Reducing the number of data centers and avoiding server sprawl (both physical and virtual) often includes replacing aging data center equipment, and is aided by standardization.</li><li>Virtualization: Lowers capital and operational expenses, reduce energy consumption. Virtualized desktops can be hosted in data centers and rented out on a subscription basis. Investment bank Lazard Capital Markets estimated in 2008 that 48 percent of enterprise operations will be virtualized by 2012. Gartner views virtualization as a catalyst for modernization.</li><li>Automating: Automating tasks such as provisioning, configuration, patching, release management and compliance is needed, not just when facing fewer skilled IT workers.</li><li>Securing: Protection of virtual systems is integrated with existing security of physical infrastructures.</li></ul>\r\n<span style=\"font-style: italic;\"><span style=\"font-weight: bold;\">Machine room</span></span>\r\nThe term "Machine Room" is at times used to refer to the large room within a Data Center where the actual Central Processing Unit is located; this may be separate from where high-speed printers are located. Air conditioning is most important in the machine room.\r\nAside from air-conditioning, there must be monitoring equipment, one type of which is to detect water prior to flood-level situations. One company, for several decades, has had share-of-mind: Water Alert. The company, as of 2018, has 2 competing manufacturers (Invetex, Hydro-Temp) and 3 competing distributors (Longden,Northeast Flooring, Slayton). ","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_Data_center.png","alias":"data-center"},"32":{"id":32,"title":"IT outsourcing","description":"<span style=\"font-weight: bold; \">IT outsourcing</span> is the use of external service providers to effectively deliver IT-enabled business process, application service and infrastructure solutions for business outcomes.\r\nOutsourcing, which also includes utility services, software as a service and cloud-enabled outsourcing, helps clients to develop the right sourcing strategies and vision, select the right IT service providers, structure the best possible contracts, and govern deals for sustainable win-win relationships with external providers.\r\nOutsourcing can enable enterprises to reduce costs, accelerate time to market, and take advantage of external expertise, assets and/or intellectual property. IT outsourcing can be implemented both ways: outsides or within the country. \r\nIT outsourcing vendors can provide either a fully managed service, meaning they take full responsibility of all IT maintenance and support, or they can provide additional support for an internal IT team when needed, which is known as co-sourced IT support. A company using IT outsourcing can choose to use one provider for all their IT functions or split the work among multiple providers. \r\n<span style=\"font-weight: bold;\">Specific IT services typically outsourced include:</span>\r\n<ul><li>Application development</li><li>Web hosting</li><li>Application support</li><li>Database development</li><li>Telecommunications</li><li>Networking</li><li>Disaster recovery</li><li>Security</li></ul>\r\n<p class=\"align-center\"><span style=\"font-weight: bold; \">Reasons for Outsourcing</span></p>\r\n<span style=\"font-weight: bold; \">To Reduce Cost.</span> More often than not, outsourcing means saving money. This is often due to lower labor costs, cheaper infrastructure, or an advantageous tax system in the outsourcing location.<br /><span style=\"font-weight: bold; \">To Access Skills That Are Unavailable Locally.</span> Resources that are scarce at home can sometimes be found in abundance elsewhere, meaning you can easily reach them through outsourcing.<br /><span style=\"font-weight: bold; \">To Better Use Internal Resources</span>. By delegating some of your business processes to a third party, you’ll give your in-house employees the opportunity to focus on more meaningful tasks.<br /><span style=\"font-weight: bold; \">To Accelerate Business Processes.</span> When you stop wasting time on mundane, time-consuming processes, you’ll be able to move forward with your core offering a lot faster.<br /><span style=\"font-weight: bold; \">To Share Risks.</span> When you delegate a part of non-focus functionality by outsourcing it to a third-party vendor, you give away the responsibility and related risks.","materialsDescription":"<h3 class=\"align-center\">What are the Types of IT Outsourcing?</h3>\r\n<p class=\"align-left\"><span style=\"font-weight: bold; \">Project-Based Model.</span> The client hires a team to implement the part of work that is already planned and defined. The project manager from the outsourced team carries full responsibility for the quality and performance of the project.</p>\r\n<p class=\"align-left\"><span style=\"font-weight: bold; \">Dedicated Team Model.</span> The client hires a team that will create a project for them, and they will work only on that project. Unlike the project-based model, a dedicated team is more engaged in your project. In this model, an outsourced team becomes your technical and product advisor. So it can offer ideas and suggest alternative solutions.</p>\r\n<p class=\"align-left\"><span style=\"font-weight: bold; \">Outstaff Model.</span> It's a type of outsourcing in IT when you don't need a full-fledged development team and hire separate specialists. Sometimes the project requires finding a couple of additional professionals, and you're free to hire outstaff workers to cover that scope of work.</p>\r\n<h3 class=\"align-center\"><span style=\"font-weight: bold; \">What are IT Outsourcing examples?</span></h3>\r\nThe individual or company that becomes your outsourcing partner can be located anywhere in the world — one block away from your office or on another continent.\r\nA Bay Area-based startup partnering with an app development team in Utah and a call center in the Philippines, or a UK-based digital marketing agency hiring a Magento developer from Ukraine are both examples of outsourcing.\r\n<h3 class=\"align-center\">Why You Should Use IT Outsourcing</h3>\r\nNow that you know what IT outsourcing is, its models, and types, it's time to clarify why you need to outsource and whether you really need it. Let's go over a few situations that suggest when to opt for IT outsourcing.\r\n<ul><li><span style=\"font-weight: bold;\">You are a domain expert with idea</span></li></ul>\r\nIf you're an industry expert with the idea that solves a real problem, IT outsourcing is your choice. In this case, your main goal is to enter the market and test the solution fast. An outsourced team will help you validate the idea, build an MVP to check the hypothesis, and implement changes in your product according to market needs. It saves you money, time and lets you reach the goal.\r\n<ul><li><span style=\"font-weight: bold;\">You have an early-stage startup</span></li></ul>\r\nIt's a common case that young startups spend money faster than they get a solid team and a ready-to-market product. The Failory found that financial problems are the 3rd reason why startup fails. So it makes more sense to reduce costs by hiring an outsourced team of professionals while your business lives on investor's money. You may employ a full-cycle product development studio covering all the blind spots and bringing your product to life.\r\n<ul><li><span style=\"font-weight: bold;\">You need a technical support</span></li></ul>\r\nEven if you already have a ready solution, but it demands some technical improvements – frameworks for backend components, new language, integrations with enterprise software, UX&UI design – it makes more sense to find an experienced partner. There are many functions that IT outsourcing can cover, and again it saves you the time you'd otherwise spend on looking for qualified staff.<br /><br /><br />","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_IT_outsourcing.png","alias":"it-outsourcing"},"33":{"id":33,"title":"UPS - Uninterruptible Power Supply","description":"An uninterruptible power supply (UPS), also known as a battery backup, provides backup power when your regular power source fails or voltage drops to an unacceptable level. A UPS allows for the safe, orderly shutdown of a computer and connected equipment. The size and design of a UPS determine how long it will supply power.\r\nDifferent UPS topologies provide specific levels of power protection.\r\nStandby is the most basic UPS topology. A standby UPS resorts to battery backup power in the event of common power problems such as a blackout, voltage sag, or voltage surge. When incoming utility power drops below or surges above safe voltage levels, the UPS switches to DC battery power and then inverts it to AC power to run connected equipment. These models are designed for consumer electronics, entry-level computers, POS systems, security systems, and other basic electronic equipment.\r\nA line-interactive UPS incorporates technology which allows it to correct minor power fluctuations (under-voltages and over voltages) without switching to battery. This type of UPS has an autotransformer that regulates low voltages (e.g., brownouts) and over voltages (e.g., swells) without having to switch to battery. Line-interactive UPS models are typically used for consumer electronics, PCs, gaming systems, home theater electronics, network equipment, and entry-to-mid-range servers. They provide power during such events as a blackout, voltage sag, voltage surge, or over-voltage.\r\nA double-conversion (online) UPS provides consistent, clean, and near-perfect power regardless of the condition of incoming power. This UPS converts incoming AC power to DC, and then back to AC. UPS systems with this technology operate on isolated DC power 100 percent of the time and have a zero transfer time because they never need to switch to DC power. Double-conversion UPS systems are designed to protect mission-critical IT equipment, data center installations, high-end servers, large telecom installations and storage applications, and advanced network equipment from damage caused by a power blackout, voltage sag, voltage surge, over-voltage, voltage spike, frequency noise, frequency variation, or harmonic distortion.","materialsDescription":" <span style=\"font-weight: bold;\">What is a UPS system?</span>\r\nUPS stands for an uninterruptible power supply. This means that a UPS system is designed to keep the power running at all times. For instance, load shedding will be a problem of the past with our wide variety of products and solutions keeping your business moving.\r\n<span style=\"font-weight: bold;\">Where is a UPS used?</span>\r\nUPS systems can be used anywhere that needs to ensure that the power stays on. The most common applications are where power is critical to avoid infrastructure damage e.g. Data centers and manufacturing facilities.\r\n<span style=\"font-weight: bold;\">What is the difference between a battery and a UPS?</span>\r\nA battery is a device that stores energy, a UPS detects when there is no longer any power coming from the mains and switches over to the UPS batteries.\r\n<span style=\"font-weight: bold;\">Can I use a UPS for 6-7 hours?</span>\r\nIf the power requirement is low and the UPS is overrated, possibly, but normally running a UPS for this long requires so many UPS batteries it becomes unfeasible both financially and physically. It would be best to run a standby generator alongside your UPS to achieve this.\r\n<span style=\"font-weight: bold;\">What is the difference between a UPS and an Inverter?</span>\r\nThe UPS and inverter both provide the backup supply to the electrical system. The major difference between the UPS and inverter is that the UPS switches from the main supply to the battery immediately, but the inverter takes much longer.\r\n<span style=\"font-weight: bold;\">What is a non-critical load in a power system?</span>\r\nA non-critical load is an electrical device or devices, that aren’t key to keeping a business running or won’t be damaged by a power cut. In short, it doesn’t matter if these devices lose power in an outage.\r\n<span style=\"font-weight: bold;\">What is backup power?</span>\r\nBackup power is a term that simply means, a source of power if the main power source fails. This can be anything from some AA batteries in your mains powered alarm clock to UPS system and standby generator that is connected to your data center.\r\n<span style=\"font-weight: bold;\">What is the difference between a standby generator and a UPS system?</span>\r\nWhile both protect against a power cut, a UPS is an immediate, short term solution, provide power straight away for as long as its UPS batteries have a charge. A standby generator is a longer turn solution, that is slower to start up but will provide power for as long as it has fuel.<br /><br />","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_UPS.png","alias":"ups-uninterruptible-power-supply"},"435":{"id":435,"title":"Rack Server","description":"A rack mount server is a great way to maximize your shelf space by packing a lot of servers into a small space. Rackmount servers are typically easier for administrators to manage due to proximity, modularity and better cable management. Lockable rack cabinet doors and steel server front panels provide an additional level of physical security. Additionally, rack unit designed servers are better able to keep the server components cool than traditional tower form factor. Industry standard 19-inch racks will allow you to easily expand your business without taking up more valuable floor space.\r\nThere is a lot of thought that needs to go into which size rack server is best bet for your project. Both current requirements and future expansion plans need to be taken into account to ensure your server remains capable in the future.\r\nBoth large and small projects can be built on the 1U server platform. "U" stands for unit, “unit”, and this means thickness: server rack 1U = 1.75 inches or 44 mm wide. A reasonable amount of storage can fit within a 1U, processing power has no limits, and some models even allow up to two PCI-Express cards. Modern computer hardware uses much less power than it ever has in the past, which means less heat generation. Some 1U servers to still produce some acoustic noise, but is nowhere near the level of needing earmuffs like the old days. The only reason to go up in size is for additional expansion options.\r\n2U models allow for multiple "low-profile" PCI-Express cards while keeping a compact form factor and also providing some additional storage space. If the plan is to use multiple full height cards, then 3U or 4U servers should be the focus. The 4U models are very popular and offer flexible options. The 3U models do have limitations on expansion card compatibility and are really only for situations where rack space needs to be absolutely optimized (14x3U servers or 10x4U servers can fit in a 42u rack).","materialsDescription":"<span style=\"font-weight: bold;\">What is a ‘rack unit’?</span>\r\nA rack unit is the designated unit of measurement used when describing or quantifying the vertical space you have available in any equipment rack. One unit is equal to 1.75 inches, or 4.45 centimeters. Any equipment that has the ability to be mounted onto a rack is generally designed in a standard size to fit into many different server rack heights. It’s actually been standardized by the Electronic Industries Alliance (EIA). The most common heights are between 8U to 50U, but customization is also a viable option if you’re working with nonstandard sizes.\r\n<span style=\"font-weight: bold;\">Are there any specific ventilation requirements with server racks?</span>\r\nOver 65% of IT equipment failures are directly attributed to inadequate, poorly maintained, or failed air conditioning in the server room. So yes, proper ventilation is a critical part of maintaining any data center. Some cabinet manufacturers construct side panel ventilation instead of front and back ventilation, but experts say it’s inadequate for rack mount servers. This can be especially dangerous if more than one cabinet is being set up at once. The importance of proper ventilation should not be taken lightly, and you should always opt for front to back ventilation except in network applications where the IT equipment exhausts out the side.\r\n<span style=\"font-weight: bold;\">What is meant by ‘server rack depth’?</span>\r\nServer rack depth is a critical aspect of the ventilation process. Connectworld.net says, “Server cabinet depth is important not only because it has to allow room for the depth of the particular equipment to be rack-mounted (deep servers vs. routers or switches), but also it has to allow sufficient room for cables, PDU’s as well as airflow.<br /><br />","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_Rack_Server.png","alias":"rack-server"},"441":{"id":441,"title":"Pen Tablets","description":" A graphics tablet (also known as a digitizer, drawing tablet, drawing pad, digital drawing tablet, pen tablet, or digital art board) is a computer input device that enables a user to hand-draw images, animations and graphics, with a special pen-like stylus, similar to the way a person draws images with a pencil and paper. These tablets may also be used to capture data or handwritten signatures. It can also be used to trace an image from a piece of paper which is taped or otherwise secured to the tablet surface. Capturing data in this way, by tracing or entering the corners of linear poly-lines or shapes, is called digitizing.\r\nThe device consists of a flat surface upon which the user may "draw" or trace an image using the attached stylus, a pen-like drawing apparatus. The image is displayed on the computer monitor, though some graphic tablets now also incorporate an LCD screen for a more realistic or natural experience and usability.\r\nSome tablets are intended as a replacement for the computer mouse as the primary pointing and navigation device for desktop computers.\r\nGraphic tablets, because of their stylus-based interface and ability to detect some or all of pressure, tilt, and other attributes of the stylus and its interaction with the tablet, are widely considered to offer a very natural way to create computer graphics, especially two-dimensional computer graphics. Indeed, many graphic packages can make use of the pressure (and, sometimes, stylus tilt or rotation) information generated by a tablet, by modifying the brush size, shape, opacity, color, or other attributes based on data received from the graphic tablet.\r\nIn East Asia, graphic tablets, known as "pen tablets", are widely used in conjunction with input-method editor software (IMEs) to write Chinese, Japanese, and Korean characters (CJK). The technology is popular and inexpensive and offers a method for interacting with the computer in a more natural way than typing on the keyboard, with the pen tablet supplanting the role of the computer mouse. Uptake of handwriting recognition among users who use alphabetic scripts has been slower.\r\nGraphic tablets are commonly used in the artistic world. Using a pen-like stylus on a graphic tablet combined with a graphics-editing program, such as Illustrator or Photoshop by Adobe Systems, or CorelDraw, gives artists a lot of precision when creating digital drawings or artwork. Photographers can also find working with a graphic tablet during their post processing can really speed up tasks like creating a detailed layer mask or dodging and burning.\r\nEducators make use of tablets in classrooms to project handwritten notes or lessons and to allow students to do the same, as well as providing feedback on student work submitted electronically. Online teachers may also use a tablet for marking student work, or for live tutorials or lessons, especially where complex visual information or mathematical equations are required. Students are also increasingly using them as note-taking devices, especially during university lectures while following along with the lecturer.\r\nTablets are also popular for technical drawings and CAD, as one can typically put a piece of paper on them without interfering with their function.\r\nFinally, tablets are gaining popularity as a replacement for the computer mouse as a pointing device. They can feel more intuitive to some users than a mouse, as the position of a pen on a tablet typically corresponds to the location of the pointer on the GUI shown on the computer screen. Those artists using a pen for graphic work will as a matter of convenience use a tablet and pen for standard computer operations rather than put down the pen and find a mouse. A popular game osu! allows utilizing a tablet as a way of playing.\r\nGraphic tablets are available in various sizes and price ranges; A6-sized tablets being relatively inexpensive and A3-sized tablets far more expensive. Modern tablets usually connect to the computer via a USB or HDMI interface. ","materialsDescription":" <span style=\"font-weight: bold;\">What is a pen tablet?</span>\r\nAlso called a drawing tablet or a pen tablet, a graphics tablet is a natural input device that converts information from a handheld stylus. The user uses the stylus like a pen, pencil, or paintbrush, pressing its tip on the tablet surface. The device can also be used in the replacement of a computer mouse.\r\n<span style=\"font-weight: bold;\">Who uses graphics tablets?</span>\r\n<ul><li>Architects and Engineers;</li><li>Artists;</li><li>Cartoonist;</li><li>Fashion designers;</li><li>Graphic designers;</li><li>Illustrators;</li><li>Photographers;</li><li>Teachers.</li></ul>","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_Pen_Tablets.png","alias":"pen-tablets"},"453":{"id":453,"title":"Desktop PC","description":" A desktop computer is a personal computer designed for regular use at a single location on or near a desk or table due to its size and power requirements. The most common configuration has a case that houses the power supply, motherboard (a printed circuit board with a microprocessor as the central processing unit (CPU), memory, bus, and other electronic components), disk storage (usually one or more hard disk drives, solid state drives, optical disc drives, and in early models a floppy disk drive); a keyboard and mouse for input; and a computer monitor, speakers, and, often, a printer for output. The case may be oriented horizontally or vertically and placed either underneath, beside, or on top of a desk.\r\nDesktop computers are designed to work at the table. Usually, they are bigger and more powerful than other types of personal computers. Desktop computers are made up of individual components. The main component is called the system unit - usually, it is a rectangular case that is on or under the table. Other components, such as the monitor, mouse and keyboard, are connected to the system unit.\r\nAs a rule, all additional external devices are connected to the PC system unit using special connectors. Their main part is located on its rear wall. Some, the most popular ones, are brought to the front, for example, USB connectors and audio outputs. The system unit itself consists of internal devices, called components.","materialsDescription":" Main components of the desktop system unit:\r\n<ul><li><span style=\"font-weight: bold;\">A CPU</span> is the main information processing and computer control device.</li><li><span style=\"font-weight: bold;\">A video card</span> is a device for processing two-dimensional and three-dimensional graphics, as well as displaying an image on a monitor (screen).</li><li><span style=\"font-weight: bold;\">RAM</span> - used for short-term storage of data during operation of the computer. When it is turned off, the information recorded in the RAM disappears.</li><li><span style=\"font-weight: bold;\">A storage device (hard disk)</span> - used as the primary means for storing all user data and programs. Its capacity is much more than the amount of RAM, however, the speed of reading and writing information is less than when working with RAM.</li><li><span style=\"font-weight: bold;\">A motherboard</span> is a complex device that combines all the components of a personal computer and ensures their well-coordinated work.</li><li><span style=\"font-weight: bold;\">An optical drive</span> - a device for reading and writing information on optical CDs, DVDs and Blue-ray discs.</li><li><span style=\"font-weight: bold;\">A case</span> - protects all components from harmful external influences (for example, moisture) and gives an aesthetic look to your computer.</li><li><span style=\"font-weight: bold;\">A power supply unit</span> converts the alternating current of ordinary electric networks of high voltage (220 Volt) into direct current of low voltage (12 V, 5 V and 3 V), required for powering computer components.</li></ul>","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_Desktop_PC.png","alias":"desktop-pc"},"455":{"id":455,"title":"Portable PC","description":" A portable computer is a computer designed to be easily moved from one place to another and included a display and keyboard. The first commercially sold portable was the 50 pound IBM 5100, introduced 1975. The next major portables were Osborne's 24 pound CP/M-based Osborne 1 (1981) and Compaq's 28 pound 100% IBM PC compatible Compaq Portable (1983). These "luggable" computers lacked the next technological development, not requiring an external power source; that feature was introduced by the laptop. Laptops were followed by lighter models, so that in the 2000's mobile devices and by 2007 smartphones made the term almost meaningless. The 2010's introduced wearable computers such as smartwatches.\r\nPortable computers, by their nature, are generally microcomputers. Larger portable computers were commonly known as 'Lunchbox' or 'Luggable' computers. They are also called 'Portable Workstations' or 'Portable PCs'. In Japan they were often called 'Bentocom'. (ベントコン, Bentokon) from "bento".\r\nPortable computers, more narrowly defined, are distinct from desktop replacement computers in that they usually were constructed from full-specification desktop components, and often do not incorporate features associated with laptops or mobile devices. A portable computer in this usage, versus a laptop or other mobile computing device, have a standard motherboard or backplane providing plug-in slots for add-in cards. This allows mission specific cards such as test, A/D, or communication protocol (IEEE-488, 1553) to be installed. Portable computers also provide for more disk storage by using standard disk drives and provide for multiple drives.\r\nPortable computers have been increasing in popularity over the past decade, as they do not restrict the user's mobility as a desktop computer does, and do not restrict the computer power and storage available as a laptop computer does. Wireless access to the Internet, extended battery life, and more elaborate cases permitting multiple screens and even significant RAID capacity, have contributed.","materialsDescription":"<span style=\"font-weight: bold; \">What does Portable Computer mean?</span>\r\nA Portable computer is a computer that comes with a keyboard and display and one which can be easily relocated or transported, although less convenient compared to a notebook.\r\nThey have lower specifications and are not well suited for full-time usage as they are less ergonomic. However, they take less space than desktop computers and come with most features found on a desktop. \r\n<span style=\"font-weight: bold; \">What are the advantages of portable PC?</span>\r\nAdvantages of a portable computer:\r\n<ul><li>Compared to other mobile computing device or laptop, portable computer makes use of standard motherboards and also provide plug in slots for add in cards.</li><li>Portability and flexibility to use is a definite advantage for portable computer over desktop computers.</li><li>Portable computers use less space than desktop computers and are smaller in size.</li><li>Compared to a desktop computer, the power consumed is less in case of portable computer and can help in power and cost savings.</li><li>Compared to desktop computers, immediacy is more pronounced in the case of portable computers.</li></ul>\r\n<span style=\"font-weight: bold;\">What are the disadvantages of portable PC?</span>\r\nDisadvantages of a portable computer:\r\n<ul><li>They have a lower specification than most desktop systems.</li><li>They are less ergonomic and are less suited for full-time usage in most of the cases.</li><li>Expansion is tough and any repair could prove costly.</li><li>Most of portable computers are not upgradeable.</li><li>Compared to desktop systems, they are less reliable mostly due to overheating problems and often run slower.</li></ul>","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_Portrable_PC.png","alias":"portable-pc"},"501":{"id":501,"title":"All-flash and Hybrid Storage","description":" Costs have come down making hybrid and all-flash enterprise storage solutions the preferred choice for storing, processing and moving the massive volumes of business data generated in today’s cloud, mobile and IoT environment.\r\nll-flash storage arrays utilize solid-state drives (SSDs) to deliver high-performance and low-latency workloads using data compression and deduplication technologies. Hybrid Storage combines those same solid-state drives (SSDs) with SAS or NL-SAS drives to offer a more cost-effective storage solution that balances cost with superior performance and high storage density.\r\nBoth options lower the complexity of providing scale-out performance at ultralow latency for data-intensive loads and big data analytics.\r\nWhether you are building a new storage array or refreshing your existing storage infrastructure we will work with you to plan, source, install and configure a storage solution to meet you budgetary and business requirements.","materialsDescription":" <span style=\"font-weight: bold;\">What is flash storage and what is it used for?</span>\r\nFlash storage is any storage repository that uses flash memory. Flash memory comes in many form factors, and you probably use flash storage every day. From a single Flash chip on a simple circuit board attached to your computing device via USB to circuit boards in your phone or MP3 player, to a fully integrated “Enterprise Flash Disk” where lots of chips are attached to a circuit board in a form factor that can be used in place of a spinning disk.\r\n<span style=\"font-weight: bold;\">What is flash storage SSD?</span>\r\nA “Solid State Disk” or EFD “Enterprise Flash Disk” is a fully integrated circuit board where many Flash chips are engineered to represent a single Flash disk. Primarily used to replace a traditional spinning disk, SSDs are used in MP3 players, laptops, servers and enterprise storage systems.\r\n<span style=\"font-weight: bold;\">What is the difference between flash storage and SSD?</span>\r\nFlash storage is a reference to any device that can function as a storage repository. Flash storage can be a simple USB device or a fully integrated All-Flash Storage Array. SSD, “Solid State Disk” is an integrated device designed to replace spinning media, commonly used in enterprise storage arrays.\r\n<span style=\"font-weight: bold;\">What is the difference between flash storage and traditional hard drives?</span>\r\nA traditional hard drive leveraged rotating platters and heads to read data from a magnetic device, comparable to a traditional record player; while flash storage leveraged electronic media or flash memory, to vastly improve performance. Flash eliminates rotational delay and seeks time, functions that add latency to traditional storage media.\r\n<span style=\"font-weight: bold;\">What is the difference between an all-flash array and a hybrid array?</span>\r\nA Hybrid Storage Array uses a combination of spinning disk drives and Flash SSD. Along with the right software, a Hybrid Array can be configured to improve overall performance while reducing cost. An All-Flash-Array is designed to support only SSD media.","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_Al_flash_and_Hybrid_Storage.png","alias":"all-flash-and-hybrid-storage"},"503":{"id":503,"title":"Storage Networking","description":" A storage area network (SAN) or storage network is a computer network which provides access to consolidated, block-level data storage. SANs are primarily used to enhance accessibility of storage devices, such as disk arrays and tape libraries, to servers so that the devices appear to the operating system as locally-attached devices. A SAN typically is a dedicated network of storage devices not accessible through the local area network (LAN) by other devices, thereby preventing interference of LAN traffic in data transfer.\r\nThe cost and complexity of SANs dropped in the early 2000s to levels allowing wider adoption across both enterprise and small to medium-sized business environments.\r\nA SAN does not provide file abstraction, only block-level operations. However, file systems built on top of SANs do provide file-level access, and are known as shared-disk file systems.\r\nStorage area networks (SANs) are sometimes referred to as network behind the servers and historically developed out of the centralised data storage model, but with its own data network. A SAN is, at its simplest, a dedicated network for data storage. In addition to storing data, SANs allow for the automatic backup of data, and the monitoring of the storage as well as the backup process. A SAN is a combination of hardware and software. It grew out of data-centric mainframe architectures, where clients in a network can connect to several servers that store different types of data. To scale storage capacities as the volumes of data grew, direct-attached storage (DAS) was developed, where disk arrays or just a bunch of disks (JBODs) were attached to servers. In this architecture storage devices can be added to increase storage capacity. However, the server through which the storage devices are accessed is a single point of failure, and a large part of the LAN network bandwidth is used for accessing, storing and backing up data. To solve the single point of failure issue, a direct-attached shared storage architecture was implemented, where several servers could access the same storage device.\r\nDAS was the first network storage system and is still widely implemented where data storage requirements are not very high. Out of it developed the network-attached storage (NAS) architecture, where one or more dedicated file server or storage devices are made available in a LAN. Therefore, the transfer of data, particularly for backup, still takes place over the existing LAN. If more than a terabyte of data was stored at any one time, LAN bandwidth became a bottleneck. Therefore, SANs were developed, where a dedicated storage network was attached to the LAN, and terabytes of data are transferred over a dedicated high speed and bandwidth network. Within the storage network, storage devices are interconnected. Transfer of data between storage devices, such as for backup, happens behind the servers and is meant to be transparent. While in a NAS architecture data is transferred using the TCP and IP protocols over Ethernet, distinct protocols were developed for SANs, such as Fibre Channel, iSCSI, Infiniband. Therefore, SANs often have their own network and storage devices, which have to be bought, installed, and configured. This makes SANs inherently more expensive than NAS architectures.","materialsDescription":"<span style=\"font-weight: bold; \">What is storage virtualization?</span>\r\nA storage area network (SAN) is a dedicated high-speed network or subnetwork that interconnects and presents shared pools of storage devices to multiple servers.\r\nA SAN moves storage resources off the common user network and reorganizes them into an independent, high-performance network. This enables each server to access shared storage as if it were a drive directly attached to the server. When a host wants to access a storage device on the SAN, it sends out a block-based access request for the storage device.\r\nA storage area network is typically assembled using three principle components: cabling, host bus adapters (HBAs), and switches attached to storage arrays and servers. Each switch and storage system on the SAN must be interconnected, and the physical interconnections must support bandwidth levels that can adequately handle peak data activities. IT administrators manage storage area networks centrally.\r\nStorage arrays were initially all hard disk drive systems, but are increasingly populated with flash solid-state drives (SSDs).\r\n<span style=\"font-weight: bold; \">What storage area networks are used for?</span>\r\nFibre Channel (FC) SANs have the reputation of being expensive, complex and difficult to manage. Ethernet-based iSCSI has reduced these challenges by encapsulating SCSI commands into IP packets that don't require an FC connection.\r\nThe emergence of iSCSI means that instead of learning, building and managing two networks -- an Ethernet local area network (LAN) for user communication and an FC SAN for storage -- an organization can use its existing knowledge and infrastructure for both LANs and SANs. This is an especially useful approach in small and midsize businesses that may not have the funds or expertise to support a Fibre Channel SAN.\r\nOrganizations use SANs for distributed applications that need fast local network performance. SANs improve the availability of applications through multiple data paths. They can also improve application performance because they enable IT administrators to offload storage functions and segregate networks.\r\nAdditionally, SANs help increase the effectiveness and use of storage because they enable administrators to consolidate resources and deliver tiered storage. SANs also improve data protection and security. Finally, SANs can span multiple sites, which helps companies with their business continuity strategies.\r\n<span style=\"font-weight: bold;\">Types of network protocols</span>\r\nMost storage networks use the SCSI protocol for communication between servers and disk drive devices.[citation needed] A mapping layer to other protocols is used to form a network:\r\n<ul><li>ATA over Ethernet (AoE), mapping of ATA over Ethernet</li><li>Fibre Channel Protocol (FCP), the most prominent one, is a mapping of SCSI over Fibre Channel</li><li>Fibre Channel over Ethernet (FCoE)</li><li>ESCON over Fibre Channel (FICON), used by mainframe computers</li><li>HyperSCSI, mapping of SCSI over Ethernet</li><li>iFCP or SANoIP mapping of FCP over IP</li><li>iSCSI, mapping of SCSI over TCP/IP</li><li>iSCSI Extensions for RDMA (iSER), mapping of iSCSI over InfiniBand</li><li>Network block device, mapping device node requests on UNIX-like systems over stream sockets like TCP/IP</li><li>SCSI RDMA Protocol (SRP), another SCSI implementation for RDMA transports</li></ul>\r\nStorage networks may also be built using SAS and SATA technologies. SAS evolved from SCSI direct-attached storage. SATA evolved from IDE direct-attached storage. SAS and SATA devices can be networked using SAS Expanders.","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_Storage_Networking.png","alias":"storage-networking"},"505":{"id":505,"title":"Entry Level Storage","description":" Ready-made entry-level storage systems are often used in various solutions for the SMB segment: disk space consolidation, virtualization, various cluster solutions requiring shared block access.\r\nKey architecture features of most entry-level storage systems on the market:\r\n<ul><li>Use one or two hot-swap controllers that use disk sharing. The controller means a specialized server in a special form factor that provides storage operation (working with disks, servicing arrays and providing volumes to hosts, etc.).</li><li>The presence of two controllers provides an increase in the overall reliability of storage - the ability to avoid downtime during the planned shutdown or failure of one of the controllers) and additional scaling of performance when distributing volumes across different controllers. When using the write cache, its integrity is protected: power protection (regular battery or ionistors plus flash memory reset) and duplication of content between controllers.</li><li>The choice of host interfaces: 16 and 8 Gb FiberChannel, 1 and 10 Gb Ethernet (iSCSI, some models may have FCoE support), SAS. For some models, there are combined options, for example, FC + SAS.</li><li>It is possible to connect additional disk shelves (simple cases with SAS expanders) through the SAS interface. To increase the reliability of the connection, a 2-way connection can be applied (below is an example of one of the possible connection schemes).</li></ul>","materialsDescription":" <span style=\"font-weight: bold;\">What Is Entry-Level Storage?</span>\r\nEntry-level flash storage is simple, smart, secure, affordable, high-performance data storage for enterprises to start small and grow with seamless cloud connectivity as business requirements increase.\r\nOrganizations large and small are navigating at a rapid pace of change in a data-driven economy. Delivering data simply, quickly, and cost-effectively is essential to driving business growth, and the hybrid cloud has emerged as the most efficient way to meet changing business needs. Every IT organization is trying to determine how to modernize with hybrid cloud, and all-flash storage systems are critical on-premises to speed up enterprise applications. However, small enterprises have continued to use hard disk storage systems because of the high cost of all-flash solutions.\r\nAn entry-level storage system offers compact, dense, cost-effective, and easy-to-use storage. These storage systems can be deployed in small offices, small enterprises, and remote locations to run both file and block workloads effectively and efficiently. A simple storage system should support multiple protocols, including FC, NFS, SMB/CIFS, iSCSI, and FCoE, to help customers consolidate multiple applications onto a single simple system. It must be easy to install and deploy, secure and provide flexibility to connect to the cloud.\r\nEntry-level flash storage systems help accelerate all applications, consolidate workloads with better user experience, more effective storage and offer the best value to the customer.\r\n<span style=\"font-weight: bold;\">What Are the Benefits of Entry-Level Storage?</span>\r\n The benefits of entry-level storage include:\r\n<ul><li>Improved user experience with fast, secure, and continuous access to data;</li><li>Improved storage efficiency;</li><li>Reduced cost through improved TCO;</li><li>Increased ability for IT to support new business opportunities by leveraging the latest technologies like artificial intelligence (AI), machine learning (ML), deep learning (DL), and cloud.</li></ul>","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_Entry_Level_Storage.png","alias":"entry-level-storage"},"507":{"id":507,"title":"Mission Critical Storage","description":" As enterprises become more digital, the role of mission-critical applications on which the functioning of the business depends. In practice, this requires more platform flexibility to serve both traditional applications and modern cloud computing.\r\nIT professionals who are already fully loaded with support for traditional corporate tools, such as virtualization or database management systems, have to implement and maintain modern applications such as containers or analytics.\r\nServer virtualization has almost become the main driver for the development of storage virtualization, especially since virtual machines have already penetrated quite a lot into the critical applications segment.\r\nData storage systems help to cope with the ever-growing volumes of data, allowing you to effectively work with information. Storage systems for mission-critical applications are focused on the needs of companies of various sizes - from remote branches to large enterprises with significant amounts of information.\r\nAlso many factors affect the selection of a data center location, but utility infrastructure, uptime, talent, and speed are always the focal points.\r\nFew people are unaware of the large electric loads (usage) of data centers. Naturally, due to the amount of power they need, data centers are very price-sensitive to a location’s cost of electricity. The cost is more than centers per kWh, though. Data centers have unique ramp-up needs and reserved capacity demands. The utility’s ability to accommodate these requirements can have a significant impact on cost. Likewise, the mission-critical aspect of the data center, requiring it to be online at all times, drives rigorous power redundancy and reliability requirements. The utility’s “cost-to-serve” and revenue credit policies must be factored into the overall cost of providing the requisite power.","materialsDescription":" <span style=\"font-weight: bold;\">What is mission-critical data?</span>\r\nA 'mission-critical' operation, system or facility may sound fairly straightforward – something that is essential to the overall operations of a business or process within a business. Essentially, something that is critical to the mission.","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_Mission_Critical_Storage.png","alias":"mission-critical-storage"},"515":{"id":515,"title":"Tower Server","description":"A tower server is a computer that is built in an upright cabinet that stands alone and that is designed to function as a server. The cabinet is known as a tower, and multiple tower servers can work simultaneously for different tasks and processes. Tower servers are popular owing to the scalability and reliability features since unlimited servers can be added to the existing network largely because of the independent nature of the individual tower servers.\r\nTower servers support most basic applications such as system management, file management, print collaboration, ER applications, distribution and system security.\r\nThere are certain advantages in using tower servers. A tower server is robust and simple in nature. As overall component density is low, easier cooling is possible in tower servers. Possible damage, overheating or downtime can thus be prevented. The scalability factor is high in tower servers, and it is much easier to add servers to a simple network, leading to adaptable integration. Again, the maintenance factor is less when compared to other designs. Easy identification both on the network and physically is possible in tower servers as the data are usually stored in a single tower and not across various devices.\r\nThe cabling involved in tower servers can be complicated, and several tower servers in a single location could be noisy due to the fact that each tower might need a dedicated fan. An individual monitor, mouse or keyboard is required for each tower server, or a keyboard, video and mouse (KVM) switch needs to be available for managing devices using a single set of equipment. Again, in comparison to blade servers or rack servers, tower servers could be more bulky.","materialsDescription":" <span style=\"font-weight: bold;\">What is a tower server?</span>\r\nA tower server is a computer that is built in an upright cabinet that stands alone and that is designed to function as a server. The cabinet is known as a tower, and multiple tower servers can work simultaneously for different tasks and processes. Tower servers are popular owing to the scalability and reliability features since unlimited servers can be added to the existing network largely because of the independent nature of the individual tower servers.\r\n<span style=\"font-weight: bold;\">What are the advantages of a tower server?</span>\r\n<ul><li>Easier cooling, because the overall component density is fairly low.</li></ul>\r\nA tower server is robust and simple in nature. As overall component density is low, easier cooling is possible in tower servers. Therefore, it can prevent possible damage, overheating or downtime.\r\n<ul><li>Scalability, an unlimited number of servers can be added to an existing network.</li></ul>\r\nThe scalability factor is high in tower servers, and it is much easier to add servers to a simple network, leading to adaptable integration. Easy identification both on the network and physically is possible in tower servers as the data are usually stored in a single tower and not across various devices.\r\n<span style=\"font-weight: bold;\">What are the disadvantages of tower server?</span>\r\n<ul><li>A set of tower servers is bulkier and heavier than an equivalent blade server or set of rack servers.</li><li>A group of several air-cooled tower servers in a single location can be noisy because each tower requires a dedicated fan.</li></ul>","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_Tower_Server.png","alias":"tower-server"},"517":{"id":517,"title":"Blade System","description":" A blade server is a stripped-down server computer with a modular design optimized to minimize the use of physical space and energy. Blade servers have many components removed to save space, minimize power consumption and other considerations, while still having all the functional components to be considered a computer. Unlike a rack-mount server, a blade server needs a blade enclosure, which can hold multiple blade servers, providing services such as power, cooling, networking, various interconnects and management. Together, blades and the blade enclosure form a blade system. Different blade providers have differing principles regarding what to include in the blade itself, and in the blade system as a whole.\r\nIn a standard server-rack configuration, one rack unit or 1U—19 inches (480 mm) wide and 1.75 inches (44 mm) tall—defines the minimum possible size of any equipment. The principal benefit and justification of blade computing relates to lifting this restriction so as to reduce size requirements. The most common computer rack form-factor is 42U high, which limits the number of discrete computer devices directly mountable in a rack to 42 components. Blades do not have this limitation. As of 2014, densities of up to 180 servers per blade system (or 1440 servers per rack) are achievable with blade systems.\r\nEnclosure (or chassis) performs many of the non-core computing services found in most computers. Non-blade systems typically use bulky, hot and space-inefficient components, and may duplicate these across many computers that may or may not perform at capacity. By locating these services in one place and sharing them among the blade computers, the overall utilization becomes higher. The specifics of which services are provided varies by vendor.\r\n<span style=\"font-style: italic; \"><span style=\"font-weight: bold; \">Power.</span></span> Computers operate over a range of DC voltages, but utilities deliver power as AC, and at higher voltages than required within computers. Converting this current requires one or more power supply units (or PSUs). To ensure that the failure of one power source does not affect the operation of the computer, even entry-level servers may have redundant power supplies, again adding to the bulk and heat output of the design.\r\nThe blade enclosure's power supply provides a single power source for all blades within the enclosure. This single power source may come as a power supply in the enclosure or as a dedicated separate PSU supplying DC to multiple enclosures. This setup reduces the number of PSUs required to provide a resilient power supply.\r\nThe popularity of blade servers, and their own appetite for power, has led to an increase in the number of rack-mountable uninterruptible power supply (or UPS) units, including units targeted specifically towards blade servers (such as the BladeUPS).\r\n<span style=\"font-style: italic; \"><span style=\"font-weight: bold; \">Cooling.</span></span> During operation, electrical and mechanical components produce heat, which a system must dissipate to ensure the proper functioning of its components. Most blade enclosures, like most computing systems, remove heat by using fans.\r\nA frequently underestimated problem when designing high-performance computer systems involves the conflict between the amount of heat a system generates and the ability of its fans to remove the heat. The blade's shared power and cooling means that it does not generate as much heat as traditional servers. Newer blade-enclosures feature variable-speed fans and control logic, or even liquid cooling systems that adjust to meet the system's cooling requirements.\r\nAt the same time, the increased density of blade-server configurations can still result in higher overall demands for cooling with racks populated at over 50% full. This is especially true with early-generation blades. In absolute terms, a fully populated rack of blade servers is likely to require more cooling capacity than a fully populated rack of standard 1U servers. This is because one can fit up to 128 blade servers in the same rack that will only hold 42 1U rack mount servers.\r\n<span style=\"font-style: italic; \"><span style=\"font-weight: bold; \">Networking.</span></span> Blade servers generally include integrated or optional network interface controllers for Ethernet or host adapters for Fibre Channel storage systems or converged network adapter to combine storage and data via one Fibre Channel over Ethernet interface. In many blades at least one interface is embedded on the motherboard and extra interfaces can be added using mezzanine cards.\r\nA blade enclosure can provide individual external ports to which each network interface on a blade will connect. Alternatively, a blade enclosure can aggregate network interfaces into interconnect devices (such as switches) built into the blade enclosure or in networking blades.\r\nBlade servers function well for specific purposes such as web hosting, virtualization, and cluster computing. Individual blades are typically hot-swappable. As users deal with larger and more diverse workloads, they add more processing power, memory and I/O bandwidth to blade servers. Although blade server technology in theory allows for open, cross-vendor system, most users buy modules, enclosures, racks and management tools from the same vendor.\r\nEventual standardization of the technology might result in more choices for consumers; as of 2009 increasing numbers of third-party software vendors have started to enter this growing field.\r\nBlade servers do not, however, provide the answer to every computing problem. One can view them as a form of productized server-farm that borrows from mainframe packaging, cooling, and power-supply technology. Very large computing tasks may still require server farms of blade servers, and because of blade servers' high power density, can suffer even more acutely from the heating, ventilation, and air conditioning problems that affect large conventional server farms.","materialsDescription":" <span style=\"font-weight: bold;\">What is blade server?</span>\r\nA blade server is a server chassis housing multiple thin, modular electronic circuit boards, known as server blades. Each blade is a server in its own right, often dedicated to a single application. The blades are literally servers on a card, containing processors, memory, integrated network controllers, an optional Fiber Channel host bus adaptor (HBA) and other input/output (IO) ports.\r\nBlade servers allow more processing power in less rack space, simplifying cabling and reducing power consumption. According to a SearchWinSystems.com article on server technology, enterprises moving to blade servers can experience as much as an 85% reduction in cabling for blade installations over conventional 1U or tower servers. With so much less cabling, IT administrators can spend less time managing the infrastructure and more time ensuring high availability.\r\nEach blade typically comes with one or two local ATA or SCSI drives. For additional storage, blade servers can connect to a storage pool facilitated by a network-attached storage (NAS), Fiber Channel, or iSCSI storage-area network (SAN). The advantage of blade servers comes not only from the consolidation benefits of housing several servers in a single chassis, but also from the consolidation of associated resources (like storage and networking equipment) into a smaller architecture that can be managed through a single interface.\r\nA blade server is sometimes referred to as a high-density server and is typically used in a clustering of servers that are dedicated to a single task, such as:\r\n<ul><li>File sharing</li><li>Web page serving and caching</li><li>SSL encrypting of Web communication</li><li>The transcoding of Web page content for smaller displays</li><li>Streaming audio and video content</li></ul>\r\nLike most clustering applications, blade servers can also be managed to include load balancing and failover capabilities.","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_Blade_System.png","alias":"blade-system"},"519":{"id":519,"title":"Density Optimized Server","description":" The high-density server system is a modern concept of building an economical and scalable computing equipment subsystem within the data processing center (hereinafter referred to as the data center).\r\nThe high-density server system includes server equipment, modules of the organization of network interaction, technologies of resource virtualization and has constructive opportunities to install all the components of a modern data center within a single structural unit (chassis).\r\nThe virtualization tools used and the adaptive management system combines the high-density server system resources for collective use in processing various combinations of workloads.\r\nThe high-density server system in the information system infrastructure allows achieving significant cost savings by compacting components and reducing the number of cable connections, jointly managing systems, using virtualization tools, reducing power and cooling costs, simplifying deployment and the possibility of rapid interchangeability of server equipment.\r\nThe high-density server system can be used as a subsystem of corporate data centers, as well as act as a computing center for an information system of a small company, thanks to its design features and applied technologies.","materialsDescription":" <span style=\"font-weight: bold;\">The High-Density Server System Structure</span>\r\nThe composition of the high-density server system includes:\r\n<ul><li>server equipment;</li><li>interconnect modules;</li><li>software (software);</li><li>management subsystem the high-density server system.</li></ul>\r\nConstructive the high-density server system is designed to install servers of special performance, called the "blade" (from the English "blade"). At the level of the system and application software, the “blade” does not differ from a typical server installed in a standard mounting rack.\r\nSSVP includes a universal chassis with redundant input-output systems, power, cooling and control, as well as blade servers and storage of similar performance. The use of the high-density server system means the provision of a functional management subsystem and services for installation, launch and maintenance.","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_Density_Optimized_Server.png","alias":"density-optimized-server"},"521":{"id":521,"title":"Mission Critical Server","description":" Mission-critical refers to any factor of a system (equipment, process, procedure, software, etc.) whose failure will result in the failure of business operations. It is critical to the organization's "mission.\r\nThe mission-critical server is a system whose failure may result in the failure of some goal-directed activity. An example of a mission-critical system is a navigational system. The difference between mission-critical and business-critical is in the global activity and the possibility of whole personal life blackout. A business-critical system fault can influence only to a single company or a bunch of them and can partly stop lifetime activity.\r\nWith mission critical servers you get best in class reliability and uptime with screaming performance for the workloads that run your enterprise.\r\nA mission critical system is a system that is essential to the survival of a business or organization. When a mission critical system fails or is interrupted, business operations are significantly impacted.\r\nA mission-critical system is also known as mission essential equipment and mission critical application. ","materialsDescription":" <span style=\"font-weight: bold;\">What is a mission-critical server?</span>\r\nA mission-critical server is a system that is essential to the continuity of the operations of a business or organization. When a mission-critical server fails or is interrupted, business operations are significantly impacted.","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_Mission_Critical_Server.png","alias":"mission-critical-server"},"569":{"id":569,"title":"Website Design","description":" Web design is the process of creating websites. It encompasses several different aspects, including webpage layout, content production, and graphic design. While the terms web design and web development are often used interchangeably, web design is technically a subset of the broader category of web development.\r\nWebsites are created using a markup language called HTML. Web designers build webpages using HTML tags that define the content and metadata of each page. The layout and appearance of the elements within a webpage are typically defined using CSS, or cascading style sheets. Therefore, most websites include a combination of HTML and CSS that defines how each page will appear in a browser.\r\nSome web designers prefer to hand code pages (typing HTML and CSS from scratch), while others use a "WYSIWYG" editor like Adobe Dreamweaver. This type of editor provides a visual interface for designing the webpage layout and the software automatically generates the corresponding HTML and CSS code. Another popular way to design websites is with a content management system like WordPress or Joomla. These services provide different website templates that can be used as a starting point for a new website. Webmasters can then add content and customize the layout using a web-based interface.\r\nWhile HTML and CSS are used to design the look and feel of a website, images must be created separately. Therefore, graphic design may overlap with web design, since graphic designers often create images for use on the Web. Some graphics programs like Adobe Photoshop even include a "Save for Web…" option that provides an easy way to export images in a format optimized for web publishing.","materialsDescription":" <span style=\"font-weight: bold;\">Why is Web Design Important?</span>\r\nIt can be difficult to understand why most businesses are willing to pay top dollar for web design work. After all, having a functional website matters more than how it looks, right? Unfortunately, this isn’t the case. Today, the most important aspect of an online business presence in web design.\r\nThis means that businesses should always try to find the best web styles that work for their businesses. Although there are several people who can create websites, it takes a skilled person to design a website that looks polished and functional. Here are some more reasons why web design is important to good business.\r\n<span style=\"font-weight: bold;\">A Good Site Increases Customer Conversion</span>\r\nWhen a business has a well-designed website, it becomes easier to get more customer conversions. This is because a well-designed website uses its elements to lead customers directly to what they need without distractions.\r\n<span style=\"font-weight: bold;\">A Responsive Website Helps Business Reach More Clients</span>\r\nAccording to recent research by Pew Research Center, it was discovered that more and more users are using their mobile phones to do business. This means that businesses need to take advantage of this new set of customers by creating websites that can get clients who are away from their computers.\r\n<span style=\"font-weight: bold;\">Websites Help in Business Branding</span>\r\nA poor looking website will damage the brand of any company while a scummy-looking website drives customers away. However, an elegant website will help people to connect with a business’s branding. A website with a user-friendly page tends to attract clients more to businesses.","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_Website_Design.png","alias":"website-design"},"595":{"id":595,"title":"iOS Software Development","description":"iOS is Apple’s mobile OS that runs on an iPhone, iPad, iPod Touch hardware. Apple provides tools and resources for creating iOS apps and accessories for these devices. As an iOS developer, you can program in native languages such as Swift or Objective-C or build cross-platform native applications using React Native (JavaScript) or Xamarin (C# & F#).<span style=\"font-weight: bold; \"></span>\r\n<span style=\"font-weight: bold; \">Developer Requirements.</span> To develop iOS apps, you need a Mac computer running the latest version of Xcode. Xcode is Apple’s IDE (Integrated Development Environment) for both Mac and iOS apps. Xcode is the graphical interface you'll use to write iOS apps. Xcode includes the iOS SDK, tools, compilers, and frameworks you need specifically to design, develop, write code, and debug an app for iOS. For native mobile app development on iOS, Apple suggests using the modern Swift programming language. It is important to note that Xcode only runs on Mac OS X and the only supported way to develop iOS apps. Like desktop software, iOS development software are designed using a range of programming languages and frameworks.<span style=\"font-weight: bold; \"></span>\r\n<span style=\"font-weight: bold; \">iOS software development kit. </span>Mobile iOS app creation software requires access to software development kits (SDKs) that provide an environment through which programmers can design and test code in a simulated mobile environment. Some iOS SDK essentials are the Cocoa Touch frameworks that include the UIKit, GameKit, PushKit, Foundation Kit, and MapKit. These frameworks and others allow you manipulate the iPhone or iPad camera, add voice interaction using SiriKit, explore music with MusicKit, expand viewing and listening via AirPlay 2, and even add iMessage Business Chat to your application. iOS 11 added the power of machine learning with Core ML and augmented reality (AR) experiences with ARKit.\r\n<p id=\"Beta_Testing\" style=\" color:#232f3e; \"><span style=\"font-weight: bold; \">Beta Testing.</span> <span style=\"font-weight: normal; \">Once you have built and tested (using XCTest framework or iOS Unit test) your app, you can invite users to your apps and collect feedback using TestFlight prior to deploying to the App Store. This is a good time for testing Push Notifications, data storage using Core Data, and making network calls to 3rd party APIs. To get going, you simply upload a beta build of your app, and use iTunes Connect to add the name and email of testers. <br /></span></p>\r\n<p id=\"Beta_Testing\" style=\" color:#232f3e; \"><span style=\"font-weight: bold; \">Cloud Testing.</span><span style=\"font-weight: normal; \">Testing your iOS app on real devices is critically important since the performance of the real device, different operating system versions, modifications made by manufacturer and carriers firmware may lead to unexpected issues with your app. Testing on real device gives you a more accurate understanding of how your users interact with your app. On the other hand, obtaining physical devices for testing is a logistical challenge. This is where cloud testing comes into play. With cloud testing, you can test your application on real devices that are accessible on the cloud. <br /></span></p>\r\n<p id=\"Beta_Testing\" style=\" color:#232f3e; \"><span style=\"font-weight: bold; \">Deployment.</span> <span style=\"font-weight: normal; \">Once you have built, tested, and beta tested your iOS app, you can deploy to the App Store. At this point, you must join the Apple Developer Program. As a member, you’ll get access to beta iOS app development software, advanced app capabilities, extensive beta testing tools, and app analytics.</span></p>\r\n\r\n","materialsDescription":"<h1 class=\"align-center\"><span style=\"font-weight: bold; \">What are the advantages of iOS App Development?</span></h1>\r\n<ul><li><span style=\"font-weight: bold;\">iOS is easy to use interface.</span> Apple’s iPhone becomes the dream of many smartphone users, providing high customer service and become a market leader for offering unmatched devices. You can attract your Apple users easily if an application will be created on a synchronized environment Apple’s platform. These special flexible User Interface of the features of the iOS app can make your business application more desirable and boost up their sales and earn maximum benefits.</li><li><span style=\"font-weight: bold;\">iOS has more security.</span> iOS platform offers its users stay safe from external threats which is the best part and advantage of this platform. While developing an app for the business, providing a powerful shield against malware, virus and other internet threats for app development of a business. iOS applications are secured applications, allows effortless transaction facilities app without spending more time on testing different devices.</li><li>For <span style=\"font-weight: bold;\">business</span>, there are multiple options available in the highly popular iOS app making software market, this is because important to attract new customers to increase sales and chance to empower your business in the global market. The web is not a safe place for so thanks to a well-developed iPhone app Development Company can increase their availability and protect your customer’s information. With an iOS mobile app, always been an attractive device to the public with constant acknowledgment from App Store and business can flourish on a regular basis.</li><li>iOS users are usually <span style=\"font-weight: bold;\">happy users,</span> an efficiently developed iOS app helps to promote your brand or your organization to enhance productivity with profitability services to reach your targeted audience. iOS application builds a strong relationship with customers and clients, and the great audience to deliver your product and solutions to achieve their goals. Better the application is, strong would be the relationship with the superior brand in consumer electronics.</li><li>iOS applications are <span style=\"font-weight: bold;\">innovation </span>and the latest technology used globally and this can help your business to expand the most secure way. With best iOS app development software is accepted globally, you may transforming traditional business processes in a modern way and find customers from every part of the world.</li></ul>\r\n<h1 class=\"align-center\">What is IDE?</h1>\r\nIDE is the acronym for Integrated Development Environment. This contains a set of tools, resources and programming essentials within itself. It helps software/web/ mobile app developers to create new programs. This is a comprehensive solution for creating software or mobile app independently. These resources make development, deployment and debugging processes very simple. Choosing an IDE for iPhone app development is dependent on the budget, kind of programming language you prefer, etc. There are so many functionalities in an IDE that gives you a lot of benefits for app development.\r\nThe IDE makes strategies and streamlines the development phase for your entire team. It has many tools for automation, programming, debugging, compiling and for interpretation. There are three general types of IDE available. They are cloud-based, software as a service (SaaS) type and installing on the server type. IDE for iOS application development software is preferred bycompanies to reduce development time and costs. It helps in accurate testing and easy coding. Integration is also possible with these IDEs. It is as simple as a word processing program used by developers to create robust mobile applications.<br /> ","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_iOS_Software_Development.png","alias":"ios-software-development"},"597":{"id":597,"title":"Android Software Application","description":" Android software development is the process by which new applications are created for devices running the Android operating system. Google states that "Android apps can be written using Kotlin, Java, and C++ languages" using the Android software development kit (SDK), while using other languages is also possible. All non-JVM languages, such as Go, JavaScript, C, C++ or assembly, need the help of JVM language code, that may be supplied by tools, likely with restricted API support. Some languages/programming tools allow cross-platform app support, i.e. for both Android and iOS. Third party tools, development environments and language support have also continued to evolve and expand since the initial SDK was released in 2008. In addition, with major business entities like Walmart, Amazon, Bank of America etc. eyeing to engage and sell through mobiles, mobile application development is witnessing a transformation.\r\nAndroid was created by the Open Handset Alliance, which is led by Google. The early feedback on developing applications for the Android platform was mixed. Issues cited include bugs, lack of documentation, inadequate QA infrastructure, and no public issue-tracking system. In December 2007, MergeLab mobile startup founder Adam MacBeth stated, "Functionality is not there, is poorly documented or just doesn't work... It's clearly not ready for prime time." Despite this, Android-targeted applications began to appear the week after the platform was announced. The first publicly available application was the Snake game.\r\nA preview release of the Android SDK was released on November 12, 2007. On July 15, 2008, the Android Developer Challenge Team accidentally sent an email to all entrants in the Android Developer Challenge announcing that a new release of the SDK was available in a "private" download area. The email was intended for winners of the first round of the Android Developer Challenge. The revelation that Google was supplying new SDK releases to some developers and not others (and keeping this arrangement private) led to widely reported frustration within the Android developer community at the time.\r\nOn August 18, 2008, the Android 0.9 SDK beta was released. This release provided an updated and extended API, improved development tools and an updated design for the home screen. Detailed instructions for upgrading are available to those already working with an earlier release. On September 23, 2008, the Android 1.0 SDK (Release 1) was released. According to the release notes, it included "mainly bug fixes, although some smaller features were added." It also included several API changes from the 0.9 version. Multiple versions have been released since it was developed.\r\nOn December 5, 2008, Google announced the first Android Dev Phone, a SIM-unlocked and hardware-unlocked device that is designed for advanced developers. It was a modified version of HTC's Dream phone. While developers can use regular consumer devices to test and use their applications, some developers may choose a dedicated unlocked or no-contract device.\r\nAs of July 2013, more than one million applications have been developed for Android, with over 25 billion downloads. A June 2011 research indicated that over 67% of mobile developers used the platform, at the time of publication. Android smartphone shipments are forecast to exceed 1.2 billion units in 2018 with an 85% market share.","materialsDescription":" <span style=\"font-weight: bold;\">Where does Android come from?</span>\r\nIt comes from Google, who actually acquired Android in 2005 (no, Google didn't invent it). The search giant performs regular updates along with an annual major update.\r\nThe operating system is based on the Linux kernel – if you have friends who work in IT, you may have heard of it. This is the GNU / Linux operating system based structure, which is a unix type system (portable operating system, multitasking and multi-user). The Linux kernel is one of the most prominent examples of free software.\r\n<span style=\"font-weight: bold;\">Why does Android look different on each phone?</span>\r\nAndroid doesn't look different on every device, but it does have a number of different versions. Android is open-source, which means that manufacturers are free to customize the software and make it their own.\r\nThe 'purest' version of Android is often referred to as 'stock Android' and it's often preferred by the Android community: it's the original software as Google intended.\r\nOther user interfaces (UI) include Samsung's TouchWiz, Sony's Xperia, and Huawei's Emotion. See what they all look like in our Android UI comparison.\r\n<span style=\"font-weight: bold;\">What are the advantages of Android?</span>\r\nChoice. For example, if you want iOS, you have a choice of iPhone, iPhone or iPhone. If you go for Android there are stacks of great devices to choose from, from cheap and cheerful handsets to really impressive flagships. Those flagships are often cheaper than the equivalent Apple devices, too.\r\nAndroid’s choice isn’t just about hardware. It’s about everything else too. Android is incredibly easy to customize, both in terms of how it looks and how it works, and the various app stores aren’t as tightly controlled as its rivals’ stores, like Apple.\r\n<span style=\"font-weight: bold;\">What’s with the candy names?</span>\r\nEach new version of Android gets a code name based on consecutive letters of the alphabet. The most recent version is known as Marshmallow because it is the Android M release. Previous versions have included Lollipop, KitKat, Jelly Bean and Gingerbread.\r\n<span style=\"font-weight: bold;\">What’s the best thing about Android?</span>\r\nOptions, many options. With Android, you have hundreds of gadgets at your disposal, the cheapest, the most expensive and innovative market. Android is also incredibly customizable, both in their roles, as in his appearance. You can really make a unique mobile experience for yourself with this OS.\r\n<span style=\"font-weight: bold;\">What’s the worst thing about Android?</span>\r\nGetting updates. In many cases, manufacturers don’t seem to care about providing software updates for devices they’ve already sold you. Even when they do provide updates they take their sweet time about it. That’s why some consider rooting: you can download the updates yourself and apply them instead of waiting for the manufacturer to get around to it.","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_Android_Software_Application.png","alias":"android-software-application"},"598":{"id":598,"title":"Mobile Website Development","description":" Today, virtually no company can effectively conduct its business without having its own website. A site is not just the face of the company, which should be nice to look at, not an attribute of doing business, but an urgent need. If the company has its own website, then it:\r\n<ul><li>facilitates potential customers and partners access to information about themselves;</li><li>attracts the target audience from the Internet;</li><li>significantly increases market coverage;</li><li>increases brand awareness;</li><li>facilitates communication both with partners and with the target audience;</li><li>improves customer feedback;</li><li>increases customer loyalty.</li></ul>\r\nHowever, the main advantage of owning a website, of course, is that it helps to significantly increase sales, and, consequently, profit. In general, now having a website is almost a prerequisite for successful business development.\r\nComputers, smartphones, tablets, other mobile devices, and the Internet have penetrated all spheres of our lives. A variety of mobile devices are especially popular, and that is why it is no longer possible to limit oneself to a PC version of a site. The website version for the PC is bad for mobile devices, and this, as you might guess, negatively affects sales and profits. If the site is uncomfortable to use, then the potential client will not rack their brains, but simply use the services of competitors. The vast majority will not even try to find something on the site if it is not adapted for mobile devices.\r\nA separate mobile version of the site is a site specifically designed for mobile users. As a rule, a mobile version of a site is hosted on a dedicated subdomain.\r\nThe mobile version of the site, in most cases, is simply a greatly reduced version of the site for the PC. Only those functions that, according to the developers, maybe needed by those users who access the site with a smartphone or tablets, are left on the mobile site.\r\nThe mobile version of the site is good in that it does not depend on the main one, can be easily changed and edited, loads quickly is quite convenient for users, and also has the option of switching to the main version of the site.","materialsDescription":" <span style=\"font-weight: bold;\">What’s a mobile website?</span>\r\nMobile devices have transformed the way we live, putting the digital world at our fingertips 24 hours a day, wherever we are.\r\nThis means establishing your mobile presence is more important now than ever as you have the opportunity to put your business in the pockets of your consumers and create more meaningful interactions with your users. Almost 80% of people use smartphones to search the internet, so if your business is lacking a mobile website or app, you are missing out on a huge market opportunity.\r\nThere are two types of mobile development – responsive mobile sites and mobile applications. We build easy to use, intuitive and responsive mobile apps and websites, designed for optimization across all devices to keep you ahead of your competitors.\r\nA mobile website is a website with a responsive, fluid design, that is user-friendly on multiple devices and web browsers. A study conducted by Google and Galaxy in June 2015 found that 74% of Australians rely on their phones at least as much as they rely on desktops when searching for information, ideas or advice. This is when responsive design plays a huge role.\r\n<span style=\"font-weight: bold;\">Why do I need a mobile website?</span>\r\n<span style=\"font-style: italic;\"><span style=\"font-weight: bold;\">Mobile traffic has taken over</span></span>\r\nAs mobile traffic has taken over desktop traffic in 2015, more and more people only browse the internet on mobile phones. This means that businesses now need to adopt a mobile-first approach to their online strategies.\r\n<span style=\"font-style: italic;\"><span style=\"font-weight: bold;\">Search engines are pushing for better UX</span></span>\r\nMobile users tend to have poor experiences on desktop websites. This is something that search engines such as Google have understood, and are putting initiatives in place to improve mobile web experiences. For example, Google released its mobile-friendly update in 2015 and is switching its search index to mobile-first.\r\n<span style=\"font-style: italic;\"><span style=\"font-weight: bold;\">Competitive advantage</span></span>\r\nWebsite owners now need to provide compelling experiences to their mobile users. This is something that is now vital in order to reach business goals and lead users to conversion. As a result, the fast adoption of a mobile strategy is a competitive advantage.","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_Mobile_Website_development.png","alias":"mobile-website-development"},"603":{"id":603,"title":"MacOS Development","description":" The key to great app development lies in having a solid foundation, ideally laid in having a good operating system, to begin with on which your app will stand on and initiate all its operations. For a long time, Windows was the dominating operating system of the nineties.\r\nWhy Should You Use Mac OS X in App Development? A reason for this system’s stagnation in progress is the brand’s fear in offending its corporate clients; therefore every tech change has to be introduced painfully slowly so as to be assimilated by its clients.\r\nApple, on the other hand, has slowly crept up and overtaken Windows and other operating systems primarily because they are not afraid of taking giant leaps. Their “it’s our way or the high way” approach to their operating system has enabled them to make significant improvements in their software, which other operating systems are almost incapable of attaining.\r\nMAC OS X software is essentially a two-layered system. Its impressive GUI sits on top of a UNIX core, and UNIX is notorious for its impressive security features. UNIX makes it’s nearly impossible to install a Trojan or a virus to the system unless the user gives it root access to the system by essentially typing in the admin password into the system.\r\nThe beauty of MAC OS X built-in firewall is that it operates out the box, while at the same time being highly flexible. While MAC users should ideally remain vigilant about foreign files and consequentially never allow them into the system by giving them an admin pass, they then do not need special software to block out these viruses.\r\nMAC OS interface is simple, you can pin as many apps as possible to dock at the bottom of your screen, plus they are always available to you. Besides this, you can run multiple desktops, make use of your iCloud chain to decipher your credit card information, share various files wirelessly through Airdrop, and still monitor the operating system via a set of in-built high-grade utility tools.\r\nThe system also has a rapid start-up resume time. All this is essentially made possible by MAC OS powerful stability. Even though systemic degradation is expected over time, as is the case with just about every operating system, the rate is significantly reduced on MAC products and freezing and crashing are not a common everyday occurrence as is the case with a few operating systems.\r\nMAC’s impressive reliability can be primarily attributed to the fact that the operating system was built from the ground up. Apple essentially controls the production of its software and hardware products from start to finish, and so every part of the system is designed and tested out to work cohesively together.\r\nThose who complain that Apple forces its consumers to use its proprietary software couldn’t be more misguided. MAC OS automatically recognizes and works well with other Apple products including iPads, iPhones, etc.","materialsDescription":"<span style=\"font-weight: bold;\">What is Mac OS X?</span>\r\nMac OS X is an operating system created by Apple for Mac computers (the first version was introduced in 2001), which replaced the then outdated Mac OS 9.\r\nThis is a POSIX-compatible system, that is, all Unix operations can be performed in it. Built on the basis of the XNU core with the Aqua graphical interface.\r\nStarting with version 10.8 it is called OS X.\r\n<span style=\"font-weight: bold; \">What are the advantages of macOS?</span>\r\n<span style=\"font-style: italic; \">Fewer virus attacks:</span>\r\nAs macOS is the second most used operating system and has fewer active users so it has fewer virus attacks also. The other reason for virus safety is its UNIX relationship which is more secure than Windows OS.\r\n<span style=\"font-style: italic; \">Good customer support:</span>\r\nMac users get a good response from their support team as compared to other operating systems. Apple has skilled engineers which help the user in fixing the issues in their hardware and software.\r\n<span style=\"font-style: italic; \">Similar GUI for all the products:</span>\r\nmacOS has the same graphical user interface (GUI) as found in other Apple products like iPhone and tablets. Users feel comfortable in using macOS if they shifted from other Apple products.\r\n<span style=\"font-style: italic; \">Performance and long life:</span>\r\nAs Apple makes both hardware and software so it’s hardware communication is very efficient and it improves performance. The operating system and hardware work great. Apple computer has a longer life than other computers. The battery timing of mac laptops is also longer.\r\n<span style=\"font-style: italic; \">Default apps:</span>\r\nIf you install Windows then it comes with pre-installed apps that slow down your computer e.g. Onedrive slows your computer. But this is not the case with macOS, it comes with powerful apps which don’t affect the performance of your system. Some of the pre-installed apps of macOS are iPhoto and iMovie.\r\n<span style=\"font-style: italic; \">Support NTFS and FAT:</span>\r\nmacOS support Windows file system formats including both NTFS and FAT.\r\n<span style=\"font-style: italic; \">Can run Windows:</span>\r\nYou can run the Windows operating system if you have macOS installed by using Bootcamp or parallels software.\r\n<span style=\"font-weight: bold; \">What are the disadvantages of macOS?</span>\r\n<span style=\"font-style: italic; \">Expensive:</span>\r\nThe minimum cost of a Mac PC is higher than $1000. You can get a good Windows PC at $1000 with more hardware specifications.\r\n<span style=\"font-style: italic; \">Fewer games and software:</span>\r\nMost game developers prefer to make games for the Windows OS because they have more percentages of users. Mac users have fewer games available. Also, mac computers have low graphics capability to run high graphics games. There is some software that is available for Windows and not available for mac users e.g. adobe premiere pro etc.\r\n<span style=\"font-style: italic; \">No hardware customization:</span>\r\nIf you buy any Mac computer/laptop then you cannot change its hardware parts like processor, graphics card, etc. For some mac computers, you can change hardware and RAM but it is not for all mac computers. It is also not possible to change other hardware accessories like internal computer parts, the only choice you have is to buy a new mac computer. On every major release of your operating system you have to change your computer else 50% of your operating system features not work.\r\n<span style=\"font-style: italic; \">Windows cannot read the macOS file system:</span>\r\nmacOS can read NTFS and FAT Windows format but Windows cannot read the macOS file system. You need to install 3rd party software in Windows to do so. Some other software like footnotes has compatibility issues while moving files from macOS to Windows.\r\n<span style=\"font-style: italic; \">Less hardware used:</span>\r\nThe new version of macOS computer supports fewer USB ports and they also not shipped with CD/DVD writer.","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_MacOS_Development.png","alias":"macos-development"},"605":{"id":605,"title":"Java Development","description":" Java is a general-purpose programming language that is class-based, object-oriented, and designed to have as few implementation dependencies as possible. It is intended to let application developers write once, run anywhere (WORA), meaning that compiled Java code can run on all platforms that support Java without the need for recompilation. Java applications are typically compiled to bytecode that can run on any Java virtual machine (JVM) regardless of the underlying computer architecture. The syntax of Java is similar to C and C++, but it has fewer low-level facilities than either of them. As of 2019, Java was one of the most popular programming languages in use according to GitHub, particularly for client-server web applications, with a reported 9 million developers.\r\nJava was originally developed by James Gosling at Sun Microsystems (which has since been acquired by Oracle) and released in 1995 as a core component of Sun Microsystems' Java platform. The original and reference implementation Java compilers, virtual machines, and class libraries were originally released by Sun under proprietary licenses. As of May 2007, in compliance with the specifications of the Java Community Process, Sun had relicensed most of its Java technologies under the GNU General Public License. Meanwhile, others have developed alternative implementations of these Sun technologies, such as the GNU Compiler for Java (bytecode compiler), GNU Classpath (standard libraries), and IcedTea-Web (browser plugin for applets).\r\nThe latest versions are Java 13, released in September 2019, and Java 11, a currently supported long-term support (LTS) version, released on September 25, 2018; Oracle released for the legacy Java 8 LTS the last free public update in January 2019 for commercial use, while it will otherwise still support Java 8 with public updates for personal use up to at least December 2020. Oracle (and others) highly recommend uninstalling older versions of Java because of serious risks due to unresolved security issues. Since Java 9 (and 10 and 12) is no longer supported, Oracle advises its users to immediately transition to the latest version (currently Java 13) or an LTS release.","materialsDescription":"<span style=\"font-weight: bold; \">What is Java technology and what is its application?</span>\r\nJava is a programming language and computing platform that was first launched by Sun Microsystems in 1995. There are many applications and websites that do not work when Java is not installed, and the number of such websites and applications is increasing every day. Java is fast, highly secure, and reliable. From laptops to data centers, from game consoles to supercomputers used for scientific research, from cell phones to the Internet - Java is everywhere!\r\n<span style=\"font-weight: bold;\">What is the performance of Java?</span>\r\nPrograms written in Java have a reputation for being slower and taking up more RAM than those written in C. Nevertheless, the speed of execution of programs written in Java has been significantly improved with the release of the so-called JIT compiler in 1997-1998. in version 1.1, in addition to other language features to support better code analysis (such as inner classes, StringBuffer class, simplified logic calculations, and so on). In addition, the Java virtual machine was optimized - since 2000, the HotSpot virtual machine has been used for this. As of February 2012, Java 7 code is approximately 1.8 times slower than C code.\r\nSome platforms offer hardware runtime support for Java. For example, microcontrollers that run Java code on hardware instead of software JVMs, as well as ARM-based processors that support Java bytecode through the Jazelle option.\r\n<span style=\"font-weight: bold;\">What are the main features of Java?</span>\r\n<ul><li>Automatic memory management.</li><li>Advanced exception handling capabilities.</li><li>A rich set of I/O filtering tools.</li><li>A set of standard collections: array, list, stack, etc.</li><li>The presence of simple tools for creating network applications (including using the RMI protocol).</li><li>The presence of classes that allow you to perform HTTP requests and process responses.</li><li>Built-in language tools for creating multi-threaded applications, which were then ported to many languages (for example, Python).</li><li>Unified access to databases: at the level of individual SQL queries - based on JDBC, SQLJ; at the level of the concept of objects with the ability to store in the database - based on Java Data Objects (English) and Java Persistence API.</li><li>Generalization support (since version 1.5).</li><li>Support for lambdas, closures, built-in functional programming features.</li></ul>","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_Java_Development.png","alias":"java-development"},"607":{"id":607,"title":"C/C++ Development","description":" C++ is a general-purpose object-oriented programming (OOP) language, developed by Bjarne Stroustrup, and is an extension of the C language. It is therefore possible to code C++ in a "C style" or "object-oriented style." In certain scenarios, it can be coded in either way and is thus an effective example of a hybrid language.\r\nC++ is considered to be an intermediate-level language, as it encapsulates both high- and low-level language features. Initially, the language was called "C with classes" as it had all the properties of the C language with an additional concept of "classes." However, it was renamed C++ in 1983.\r\nC++ is one of the most popular languages primarily utilized with system/application software, drivers, client-server applications and embedded firmware.\r\nThe main highlight of C++ is a collection of predefined classes, which are data types that can be instantiated multiple times. The language also facilitates declaration of user-defined classes. Classes can further accommodate member functions to implement specific functionality. Multiple objects of a particular class can be defined to implement the functions within the class. Objects can be defined as instances created at run time. These classes can also be inherited by other new classes which take in the public and protected functionalities by default.\r\nC++ includes several operators such as comparison, arithmetic, bit manipulation and logical operators. One of the most attractive features of C++ is that it enables the overloading of certain operators such as addition.\r\nA few of the essential concepts within the C++ programming language include polymorphism, virtual and friend functions, templates, namespaces and pointers.","materialsDescription":"<span style=\"font-weight: bold; \"> Bjarne Stroustrup's FAQ</span>\r\n<span style=\"font-weight: bold; \">C is better than C++ for small projects, right?</span>\r\nNot in my opinion. I never saw a project for which C was better than C++ for any reason but the lack of a good C++ compiler.\r\n<span style=\"font-weight: bold; \">Is C a subset of C++?</span>\r\nIn the strict mathematical sense, C isn't a subset of C++. There are programs that are valid C but not valid C++ and even a few ways of writing code that has a different meaning in C and C++. However, C++ supports every programming technique supported by C. Every C program can be written in essentially the same way in C++ with the same run-time and space efficiency. It is not uncommon to be able to convert tens of thousands of lines of ANSI C to C-style C++ in a few hours. Thus, C++ is as much a superset of ANSI C as ANSI C is a superset of K&R C and much as ISO C++ is a superset of C++ as it existed in 1985.\r\n<span style=\"font-weight: bold; \">What is the difference between C and C++?</span>\r\nC++ is a direct descendant of C that retains almost all of C as a subset. C++ provides stronger type checking than C and directly supports a wider range of programming styles than C. C++ is "a better C" in the sense that it supports the styles of programming done using C with better type checking and more notational support (without loss of efficiency). In the same sense, ANSI C is a better C than K&R C. In addition, C++ supports data abstraction, object-oriented programming, and generic programming (see my books).\r\nI have never seen a program that could be expressed better in C than in C++ (and I don't think such a program could exist - every construct in C has an obvious C++ equivalent). However, there still exist a few environments where the support for C++ is so weak that there is an advantage to using C instead.\r\n<span style=\"font-weight: bold; \">Do you really think that C and C++ could be merged into a single language?</span>\r\nI think that it would be a very good thing for the C/C++ community if they were. That is, if the C/C++ incompatibilities were systematically and completely eliminated and that future evolution was organized so as to prevent new incompatibilities from emerging. Whether that's possible is another matter.\r\nMy basic point is that the current C/C++ incompatibilities are "accidents of history" that have no fundamental reasons behind them (though they all "looked like a good idea at the time" to some competent and well-meaning people). The C/C++ incompatibilities provide no benefits to the community at large, cause serious problems to a large section of the C/C++ community, and could - with great difficulty - be eliminated.\r\nFor a far more detailed presentation of my views on C/C++ compatibility, see the series of papers I wrote about this:\r\n<ul><li>B. Stroustrup: C and C++: Case Studies in Compatibility. The C/C++ Users Journal. September 2002.</li><li>B. Stroustrup: C and C++: A Case for Compatibility. The C/C++ Users Journal. August 2002.</li><li>B. Stroustrup: C and C++: Siblings. The C/C++ Users Journal. July 2002.</li><li>B. Stroustrup: Sibling rivalry: C and C++. AT&T Labs - Research Technical Report. TD-54MQZY. January 2002. </li></ul>\r\nI imagine that if incompatibilities were eliminated (by making changes to both C and C++), there would still be entities called C and C++, but then C really would be defined as a subset of C++.\r\n<span style=\"font-weight: bold; \">Why did you make C++ (almost) compatible with C?</span>\r\nI wanted C++ to be compatible with a complete language with sufficient performance and flexibility for even the most demanding systems programming.\r\nAt the time, I considered C the best systems programming language available. That was not as obvious then (1979) as it later became, but I had experts such as Dennis Ritchie, Steve Johnson, Sandy Fraser, Greg Chesson, Doug McIlroy, and Brian Kernighan down the corridor from whom I could learn and get feedback. Without their help and advice, and without C, C++ would have been stillborn.\r\nContrary to repeated rumors, I was never told that I had to use C; nor was I ever told not to use C. In fact, the first C++ manual grew from troff source of the C manual that Dennis gave me. Many new languages were designed at Bell labs; in "Research" at least, there were no rules enforcing language bigotry.\r\n<span style=\"font-weight: bold; \">What do you think of C/C++?</span>\r\nNo that's not really a question I often get. In that sense, it is the only "fake FAQ" in this FAQ. However, it ought to be a FAQ because people use "C/C++" as if it meant something specific and as if they knew what it meant, leading to much confusion and misery. People should ask "What is C/C++?" and then on reflection stop using the term. It does harm.\r\nThere is no language called "C/C++". The phrase is usually used by people who don't have a clue about programming (e.g. HR personnel and poor managers). Alternatively, it's used by people who simple do not know C++ (and often not C either). When used by programmers, it typically indicates a "C++ is C with a few useful and a lot of useless complicated features added" attitude. Often, that is the point of view of people who like to write their own strings and hash tables with little knowledge of the standard library beyond printf and memcpy. There are people who stick to a restricted subset of C++ for perfectly good reasons, but they (as far as I have noticed) are not the people who say "C/C++".\r\nI use C/C++ only in phrases such as "C/C++ compatibility" and "C/C++ community".\r\n<span style=\"font-weight: bold;\">When was C++ invented?</span>\r\nI started work on what became C++ in 1979. The initial version was called "C with Classes". The first version of C++ was used internally in AT&T in August 1983. The name "C++" was used late that year. The first commercial implementation was released October 1985 at the same time as the publication of the 1st edition of The C++ Programming Language. Templates and exception handling were included later in the 1980's and documented in The Annotated C++ Reference Manual and The C++ Programming Language (2rd Edition). The first ISO C++ standard was C++98 as described in The C++ Programming Language (3rd Edition).\r\nThe current definition of C++ The 2011 ISO C++ Standard described in The C++ Programming Language (4th Edition).\r\nYou can find a more complete timeline and more detailed explanations in The Design and Evolution of C++ and A History of C++: 1979-1991 and Evolving a language in and for the real world: C++ 19.","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_C_C_Development.png","alias":"cc-development"},"609":{"id":609,"title":".Net Development","description":" .NET Framework is a software framework developed by Microsoft that runs primarily on Microsoft Windows. It includes a large class library named Framework Class Library (FCL) and provides language interoperability (each language can use code written in other languages) across several programming languages. Programs written for .NET Framework execute in a software environment (in contrast to a hardware environment) named Common Language Runtime (CLR), an application virtual machine that provides services such as security, memory management, and exception handling. As such, computer code written using .NET Framework is called "managed code". FCL and CLR together constitute the .NET Framework.\r\nFCL provides user interface, data access, database connectivity, cryptography, web application development, numeric algorithms, and network communications. Programmers produce software by combining their source code with .NET Framework and other libraries. The framework is intended to be used by most new applications created for the Windows platform. Microsoft also produces an integrated development environment largely for .NET software called Visual Studio.\r\n.NET Framework began as proprietary software, although the firm worked to standardize the software stack almost immediately, even before its first release. Despite the standardization efforts, developers, mainly those in the free and open-source software communities, expressed their unease with the selected terms and the prospects of any free and open-source implementation, especially regarding software patents. Since then, Microsoft has changed .NET development to more closely follow a contemporary model of a community-developed software project, including issuing an update to its patent promising to address the concerns.\r\n.NET Framework led to a family of .NET platforms targeting mobile computing, embedded devices, alternative operating systems, and web browser plug-ins. A reduced version of the framework, .NET Compact Framework, is available on Windows CE platforms, including Windows Mobile devices such as smartphones. .NET Micro Framework is targeted at very resource-constrained embedded devices. Silverlight was available as a web browser plugin. Mono is available for many operating systems and is customized into popular smartphone operating systems (Android and iOS) and game engines. .NET Core targets the Universal Windows Platform (UWP), and cross-platform and cloud computing workloads.","materialsDescription":"When Microsoft formally introduced its .NET strategy in mid-2000, analysts were confused about how the company would pull off such a massive platform shift. Over two years later, they're still wondering. But .NET isn't vaporware, and it's not a pipe dream. In fact, .NET is happening today.\r\n<span style=\"font-weight: bold; \">What is .NET?</span>\r\nActually, .NET is many things, but primarily it's a marketing term for a set of products and technologies that Microsoft is creating to move personal and enterprise computing beyond the PC desktop and into a distributed Internet-based environment. So .NET--which was originally called Next Generation Windows Services (NGWS)--is also a platform, one that Microsoft sees as the successor to Windows. The .NET platform is based on Web services which are, in turn, defined by a language called XML.\r\n<span style=\"font-weight: bold; \">What is XML?</span>\r\nXML--the eXtensible Markup Language--is a self-descriptive, data definition language. It's structure is similar to HTML, the language of the Web, but it's far more powerful because it's not limited to a static list of language constructs ("tags") that the language's authors supply. Instead, XML is extensible and dynamic: Programmers can define new types of data using XML and then describe that data so that others will know how to use it.\r\n<span style=\"font-weight: bold; \">What are Web services?</span>\r\nWeb services are functions exposed by server-side applications. They are programmable units that other applications (and Web services) can access over the Internet.\r\n<span style=\"font-weight: bold; \">Does .NET require Windows?</span>\r\nTechnically, no, but realistically, yes. It's possible the .NET platform could be ported to other operating systems, such as Linux, FreeBSD, the Macintosh, or whatever, and indeed, some work is being done now in this area. However, .NET very much requires Windows today, on both the server and the client. One might say that .NET and Windows have a symbiotic relationship going forward.\r\n<span style=\"font-weight: bold; \">Is .NET is being ported to Linux?</span>\r\nYes. A company called Ximian is porting the standards-based parts of .NET to Linux as you read this, and the work is amazingly far along. Code-named Mono, this project seeks to bring the C# programming language, the Common Language Runtime (CLR, see below), and other .NET features to Linux.\r\nOn a related note, Microsoft has contracted Corel (makers of CorelDRAW and Word Perfect) to port .NET to FreeBSD.\r\n<span style=\"font-weight: bold; \">Isn't .NET just another name for COM, COM+, Windows DNA, or some other previous Windows technology?</span>\r\nActually, no. Microsoft spent considerable time and effort developing and promoting a set of Windows technologies that was at various times called OLE, COM, COM+, and Windows DNA (Distributed InterNet Architecture) but .NET is not the next iteration. Windows DNA, which was the final umbrella term for this set of technologies, was based around a concept where Windows-based software components could expose their services for other local and remote Windows software components. But though this sounds passingly similar to .NET, Windows DNA is very much based on proprietary Windows technologies. By comparison, .NET is based on open standards (XML and various related technologies), so it will be much easier for other vendors to adopt the platform and write compatible software. So we can eventually expect to see .NET clients and servers on platforms other than Windows.\r\n<span style=\"font-weight: bold; \">So what technologies are part of .NET?</span>\r\n.NET is comprised of several related technologies, including:\r\n<span style=\"font-style: italic; \"><span style=\"font-weight: bold; \">.NET Framework</span></span> - A runtime environment and set of standard services which .NET capable applications and services can utilize. Implemented as a code library, the .NET Framework includes the Common Language Runtime (CLR), the .NET run-time environment; ASP .NET, a Web applications platform; and ADO .NET, for data store access.\r\n<span style=\"font-style: italic; \"><span style=\"font-weight: bold; \">.NET Compact Framework</span></span> - A subset of the .NET Framework designed for Pocket PCs, Microsoft Smart Phones, and other Windows CE .NET-based mobile devices.\r\n<span style=\"font-style: italic; \"><span style=\"font-weight: bold; \">MSN consumer services</span></span> - Microsoft will use its consumer-oriented MSN online service to expose Web services to individuals. The current version, MSN 8, includes the .NET Passport's authentication services, email, address book, calendaring and tasks, and other similar services.\r\n<span style=\"font-style: italic; \"><span style=\"font-weight: bold; \">.NET Enterprise Servers</span></span> - An extensive set of Microsoft server software that runs on Windows servers, including Application Server, BizTalk Server, Exchange Server, Host Integration Server, Internet Security and Acceleration Server, SQL Server, and many others. Microsoft is currently shipping many such server products, but they are all based on Windows DNA currently, not .NET. Future server products--beginning with Windows .NET Server 2003, due in April 2003--will actually be based on .NET technologies for the first time.\r\n<span style=\"font-style: italic; \"><span style=\"font-weight: bold; \">Visual Studio .NET</span></span> - Microsoft's .NET development environment, with support for languages such as Visual Basic .NET, Visual C++ .NET, Visual C# .NET, and Visual J#, which all target the .NET Framework. Other vendors can add other language capabilities to Visual Studio .NET, and the suite can be used to target a wide range of applications and services, including .NET Web services, Windows applications, and Web applications. Note that Visual Studio .NET is not required to create .NET applications and services: Developers can download the .NET Framework for free; this download includes compilers for Visual Basic .NET, Visual C++ .NET and Visual C# .NET.\r\n<span style=\"font-weight: bold;\">OK, so what's the point? How does this make my life better?</span>\r\nWith apologies to Microsoft for stealing the term, .NET enables a better PC ecosystem. That is, by making life easier for everyone involved with PCs, the benefits are cross-pollinated. Here's how .NET makes life easier on various groups:\r\n<span style=\"font-style: italic;\"><span style=\"font-weight: bold;\">Programmers</span></span> - Because developers now have a consistent, language-neutral programming environment, they can create better applications and services more quickly. And because .NET encompasses such a wider range of functionality, those applications and services can be connected to back-end services via the Internet, offering better, and more exciting functionality.\r\n<span style=\"font-style: italic;\"><span style=\"font-weight: bold;\">IT administrators</span></span> - Because .NET applications and services do away with the "DLL Hell" found in previous Windows applications, they are amazingly easy to distribute and install.\r\n<span style=\"font-style: italic;\"><span style=\"font-weight: bold;\">End users</span></span> - For the reasons listed above, and many others, a new generation of .NET applications and services will provide new types of connected functionality. Access your email from anywhere. Pay for products online without typing in your credit card information. Access weather, traffic, music, and other personal information from a variety of devices, from anywhere in the world. The future is all connected, and .NET will get us there.","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_Net_Development.png","alias":"net-development"},"613":{"id":613,"title":"C# Development","description":" C#, (C-Sharp) is a programming language that combines object-oriented and aspect-oriented concepts. Developed in 1998–2001 by a group of engineers under the leadership of Anders Hejlsberg at Microsoft as the main language for developing applications for the Microsoft .NET platform. The compiler with C# is included in the standard installation of the .NET itself, so programs on it can be created and compiled even without tools like Visual Studio.\r\nC# refers to a family of languages with a C-like syntax, of which its syntax is closest to C++ and Java. The language has strict static typing, supports polymorphism, operator overloading, pointers to member functions of classes, attributes, events, properties, exceptions, comments in XML format. Having taken a lot from their predecessors - C++, Java, Delphi, Modula and Smalltalk - C#, based on the practice of using them, excludes some models that have proven to be problematic when developing software systems: thus, C # does not support multiple class inheritance (unlike C ++).\r\nC# was developed as an application level programming language for the CLR and, as such, depends primarily on the capabilities of the CLR itself. This concerns, first of all, the C # type system, which reflects FCL. The presence or absence of certain expressive features of the language is dictated by whether a particular language feature can be translated into the corresponding CLR constructs. So, with the development of the CLR from version 1.1 to 2.0, C # itself was significantly enriched; similar interaction should be expected in the future. (However, this pattern was broken with the release of C # 3.0, which are language extensions that do not rely on .NET platform extensions.) The CLR provides C #, like all other .NET-oriented languages, many of the features that the “classical” programming languages lack. For example, garbage collection is not implemented in C # itself, but the CLR is done for programs written in C # just like it is done for programs on VB.NET, J #, and others.","materialsDescription":"<span style=\"font-weight: bold;\"> Why is it necessary to study the C# programming language?</span>\r\n<span style=\"font-weight: bold;\">Reason # 1. Language program C# develops.</span>\r\nNew programming languages appear annually. And the main demand is expanding and progressing. Since the C# programming language was created and accompanied by Microsoft, this technological “hippopotamus” periodically makes improvable with the addition of useful functions in C #, and you can be sure that it will perform many, many iterations ... Also, billions of lines of code are written all over the world not only under Microsoft, so the work is foreseen to everyone who wants to learn the C # programming language.\r\n<span style=\"font-weight: bold;\">Reason # 2. Your bright future with C#.</span>\r\nThis item smoothly continues the previous one. According to the ratings of the domestic DOU, it is clear that the C# programming language in Ukraine is in 3rd place in 2018 among programming languages. And in the world charts on the 4th place by PYPL PopularitY of Programming Language is a rating using Google Trends.\r\n<span style=\"font-weight: bold;\">Reason # 3. The possibility of greater profits.</span>\r\nOf course, this statement should be evaluated relatively by comparison. Today they like to say: “A programmer’s working time is more expensive than additional memory or a more powerful computer processor. It is recommended to choose more modern tools that don’t over-brain a programmer.”\r\nOn the other hand, when they talk about C#, they always mean speed and large, valuable, serious projects, even Megaprojects. For example, in C#, the Linux kernel, Unix, libraries, environment, interpreters of many modern programming languages are written.\r\n<span style=\"font-weight: bold;\">Reason # 4. C# has a huge set of use cases.</span>\r\n<ul><li>The C # programming language is mainly used to create corporate software, financial projects, for example, for banks and stock exchanges, in particular, mobile applications, cloud services.</li><li>Compared to Java, C# interacts more easily with code written in other languages. And it is precisely in C# that extensions are often written for other programming languages used as a layer between the C # library and the language, the possibilities of which are planned to be extended for specific purposes.</li><li>A pretty popular blockchain in C#.</li><li>C# is widely used in developing games on Unity. Have you ever heard of Unity? Unity is a popular game engine. This means that hundreds of thousands of games, including the most popular, were created using C#.</li><li>C# is good for working with iron, the so-called embedded. Asking what is embedded technology? Embedded system - a specialized computer system or computing device designed to perform a limited number of functions, from Wikipedia: traffic lights, cash registers, vending machines, set-top boxes, test equipment, etc.</li><li>The popular C# programming language is equally good for IoT. Again, what is IoT? IoT (Internet of Things) is a concept of a comprehensive Internet, Internet connection of refrigerators, air conditioners, cars and even sneakers with the aim of providing its owner with greater comfort, and on the other hand increasing their retailers' profits, calculating the amount of what, how much and when availability in warehouses, obtaining certain information about a person and his habits, about the environment.</li><li>Science and its application, for example, conducting complex experimental calculations, cryptography, pattern recognition, and the like.</li></ul>\r\n<span style=\"font-weight: bold;\">Reason # 5. C# is strongly typed, so it is easier for them to master beginners</span>\r\nAs for the comparison of programming languages, it should be noted that the C# programming language is multi-level. This means that it is somewhat similar to English. The C# programming language has strong static typing, supports polymorphism, operator overloading, pointers to member functions of classes, attributes, events, properties, exceptions, comments in XML format. Having adopted a lot from their predecessors - C++, Delphi, Modula, Smalltalk - in C #, relying on the practice of using them, deliberately excluded some models that proved to be problematic when developing software systems in the above-mentioned programming languages.\r\nThe syntax is quite minimalistic - with manual memory management. This is inconvenient for many, but tracking the correctness of functions, understanding the transmission of arguments is closely related to the study of the C# programming language.\r\nSince the syntax of C# is close to C, C++ and Java, then, fluent in C #, you can later learn them in one breath.","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_C_Development.png","alias":"c-development"},"617":{"id":617,"title":"Joomla Development","description":"Joomla is a free and open-source content management system (CMS) for publishing web content, developed by Open Source Matters, Inc. It is built on a model–view–controller web application framework that can be used independently of the CMS.\r\nJoomla is written in PHP, uses object-oriented programming techniques (since version 1.5) and software design patterns, stores data in a MySQL, MS SQL (since version 2.5), or PostgreSQL (since version 3.0) database, and includes features such as page caching, RSS feeds, printable versions of pages, news flashes, blogs, search, and support for language internationalization.\r\nOver 8,000 free and commercial extensions are available from the official Joomla Extensions Directory, and more are available from other sources. As of 2019, it was estimated to be the fourth most used content management system on the Internet, after WordPress and Drupal.\r\nJoomla has thousands of verified third party extensions which can be found on the Joomla Extensions Directory - extensions.joomla.org. There are also thousands of high end templates available, many of which are free. Paid templates are also available and come with support. Many templates provide a graphical user interface which allow you to change colors, fonts, layouts and features. Joomla has SEO tools built in. Includes Metadata and Keywords, Mod_rewrite support for SEF URLs and Menu creation for clear and consistent sitemaps.\r\n<ul><li>Multilingual: Offering over 75 languages.</li><li>Search Engine Optimization: Out of the box SEO & SEF.</li><li>Flexible: Make a blog, business website, intranet, community website… From the simplest to the most complex website.</li><li>Free: Joomla is free to use under GPL.</li><li>Extendable: Extensions are available to extend website functionality.</li><li>User Management: Access Control Lists allow management of the users of a website, and different groups.</li><li>Menu management: Create as many menus and menu items as you need.</li><li>Cache management: Caching for performance.</li></ul>","materialsDescription":" <span style=\"font-weight: bold; \">What is Joomla?</span>\r\nJoomla has been on the web since 2005 and has gained a massive number of users; over 50 million downloads according to www.joomla.org. It makes this CMS (content management system) the second most popular after WordPress.\r\n<span style=\"font-weight: bold; \">What are the key features of Joomla?</span>\r\n<span style=\"font-style: italic; \"><span style=\"font-weight: bold; \">Responsive.</span></span> Responsiveness is a “must have” for any up-to-date website. You, as well as almost every other Internet user today, expect the website to scale gracefully to any screen resolution and that is what Joomla is totally capable of doing.\r\nMobile devices, desktops, tablets - your website is not going to look “broken” on any of them.\r\n<span style=\"font-style: italic; \"><span style=\"font-weight: bold; \">Multilingual.</span></span> Do you operate in a non-English market? No problemo. Localizing the Joomla engine to your language is easier than it is with most of its competitors in the CMS world.\r\nThere are almost 70 language packs in Joomla which are just several clicks away from being installed and used.\r\nEven if a theme you use has some words that aren’t translatable with the language pack, you can translate the rest of them in a language override tool. This is great because in some other popular CMSs you’d need to go to your server and operate in the theme’s files directly.\r\n<span style=\"font-style: italic; \"><span style=\"font-weight: bold; \">Easy to update.</span></span> Joomla is one of the most frequently updated engines and that’s a good thing because the Joomla developer’s team brings us new features and new useful functions each time.\r\nWhat is even better, you can apply the update in two-three clicks from your admin panel. I can’t stress this point enough!\r\n<span style=\"font-style: italic; \"><span style=\"font-weight: bold; \">Well Supported.</span></span> Joomla is an open-source platform, which enables anyone to contribute on a volunteer basis.\r\nThe downside to it is the fact that you can’t get on live chat or call someone from Joomla to get a free consultation for your site.\r\nLuckily, the Joomla team developed very detailed Joomla Documentation. If you’re more of a social type, you’ll enjoy Joomla User Forum.\r\n<span style=\"font-weight: bold; \">What makes Joomla stand out?</span>\r\n<span style=\"font-style: italic; \"><span style=\"font-weight: bold; \">Joomla Media Manager</span></span>\r\nJoomla Media Manager is a tool that allows you to operate your media files in your Joomla admin panel. Media Manager in Joomla is one of the most intuitive and easy to use among similar tools.\r\nUnlike other CMS systems, you can easily create new folders on your server and upload files there. It would require going to FTP or Cpanel in most other CMSs.\r\n<span style=\"font-style: italic; \"><span style=\"font-weight: bold; \">Joomla Contact Manager</span></span>\r\nJoomla is well prepared for being a corporate site that has numerous users with different roles and capabilities. Joomla contact manager enables you to create users in different departments and categories.\r\n<span style=\"font-style: italic; \"><span style=\"font-weight: bold; \">Joomla Content Management</span></span>\r\nEven though I’ve heard customers saying Joomla has a longer learning curve, compared to WordPress, it’s so worth it, because with Joomla comes greater flexibility and content combining possibilities.\r\n<span style=\"font-style: italic; \"><span style=\"font-weight: bold; \">Joomla Extensions (8000+)</span></span>\r\nJoomla has one of the most powerful extension databases among both CMS and eCommerce platforms.<br />You can find a plugin or module to do almost anything. What is remarkable regarding Joomla extensions - a lot of great plugins and modules are free, while most paid ones come with a free lite version and there is the possibility to upgrade to a premium version whenever you decide to do so.\r\n<span style=\"font-style: italic; \"><span style=\"font-weight: bold; \">Front-end Editing</span></span>\r\nI left it till the very end of the guide as it’s my favorite one. That’s what bugs me about WordPress and what cheers me up when working with Joomla - there is no need to go to the admin panel to edit some piece of content.\r\nIf you enabled front-end editing of your site, there will be a gear wheel next to any module and by clicking on it you’ll be able to make changes on the go. It’s a thrill in this bustling world in which we live.","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_Joomla_Development.png","alias":"joomla-development"},"619":{"id":619,"title":"Drupal Development","description":" Drupal is a content management software. It's used to make many of the websites and applications you use every day. Drupal has great standard features, like easy content authoring, reliable performance, and excellent security. But what sets it apart is its flexibility; modularity is one of its core principles. Its tools help you build the versatile, structured content that dynamic web experiences need.\r\nIt's also a great choice for creating integrated digital frameworks. You can extend it with anyone, or many, of thousands of add-ons. Modules expand Drupal's functionality. Themes let you customize your content's presentation. Distributions are packaged Drupal bundles you can use as starter-kits. Mix and match these components to enhance Drupal's core abilities. Or, integrate Drupal with external services and other applications in your infrastructure. No other content management software is this powerful and scalable.\r\nThe Drupal project is open source software. Anyone can download, use, work on, and share it with others. It's built on principles like collaboration, globalism, and innovation. It's distributed under the terms of the GNU General Public License (GPL). There are no licensing fees, ever. Drupal will always be free.","materialsDescription":" <span style=\"font-weight: bold;\">What can Drupal do? And why is it different from other CMS?</span>\r\nThere are many reasons why Drupal is the top three most used CMS, and why tons of small to big complex systems have made it their options. Here are those:\r\n<ul><li><span style=\"font-weight: bold;\">Reliability.</span> Drupal is one of the top three most popular content management systems in the world. It has a longstanding history. Though Drupal is a work in progress, it has been stable along the way. We have Drupal 7 now while Drupal 8 is going to be released. But you can be assured that you will be supported for Drupal previous version at least 5 years. Meanwhile, the resources will stay there for goods.</li><li><span style=\"font-weight: bold;\">Available resources.</span> Nearly anything you want to do with the system has been priorly created and done absolutely well by other people. Other great news is nearly all of the most useful modules (Drupal add-ons) are contributed to the Drupal community. This is invaluable because, in many CMS, you have to pay for important features. As a user, you have benefited greatly from someone’s efforts, and experience.</li><li><span style=\"font-weight: bold;\">A huge dedicated community.</span> The Drupal community is large, dynamic and has functioned well since 2001. As a newbie or a senior developer, Drupal.org is a must-have resource where you dig in for learning material, upcoming news, or ask for support from contributors, and specialists.</li><li><span style=\"font-weight: bold;\">Robust and convenience.</span> Be assured that the source code for building your Drupal sites has been precisely written, and designed by Drupal experts. When you have an intention to do more complex and advanced work, you will find it easy and convenient to modify the system. This grants users a great advantage over other CMS.</li><li><span style=\"font-weight: bold;\">Flexibility.</span> It’s not a chance that Drupal is considered the most flexible CMS. We have always thought that if you have an idea about any functions, contents, you can certainly create it with Drupal. Seriously. You can create any content on site. You can customize anything to fit your taste. You can create any website type that you want.</li><li><span style=\"font-weight: bold;\">Scalability.</span> By scalability, we mean that you can extend your Drupal core to a higher level with a variety of contributed Drupal modules. What’s great with the Drupal modules is that they integrate perfectly well with Drupal core. They also connect absolutely efficiently with the modules. This is regardless of the fact many modules are totally different. It is due to the natural structure & built-in system of Drupal. This thereby enhances the power of extending your Drupal website. It is also a core strength of Drupal compared with other CMS. Meanwhile, Drupal is an open source. So suppose the modules you want don’t exist, you can create one, edit an existing module, or hire someone to do the job.</li><li><span style=\"font-weight: bold;\">Security.</span> Drupal has been meticulously tested up to strict security rules by Drupal experts and contributors. Its built-in security is strong. Drupal will lock down whatever directory installed, rendering important data, configuration files unable to be accessed directly. No wonder that many big sites with extreme security are using Drupal, namely - whitehouse.org, commerce.gov, weforum.org,...</li></ul>\r\n<span style=\"font-weight: bold;\">What are the uses of Drupal?</span>\r\nAs stated, due to its flexibility and extensibility, Drupal is not limited to any kind. Browse these lists to see the wide range of things that Drupal can build:\r\n<ul><li>Personal or corporate Web sites</li><li>Community portal sites</li><li>Intranet/Corporate sites</li><li>Blogs, art, portfolio, music, multimedia sites</li><li>Forums</li><li>International sites (websites with multi languages)</li><li>E-commerce sites</li><li>Resource directories</li><li>Social networking sites</li></ul>\r\n<span style=\"font-weight: bold;\">When Drupal isn't right?</span>\r\nIf it is necessary to know about a system before we set our foot on, it’s never been less important to explore its cons. Here we bring some of our caveats for the system:\r\n<ul><li>There’s a little learning curve. You will not learn and work with Drupal in a few days. Accept this fact. It’s harder to start compared with other CMS like Wordpress. But once you learn some basic things, it’s easy, and the flow is smoother.</li><li>It is not for those who have insufficient time to educate themselves about this system, or little money to pay a Drupal developer to carry out the work.</li><li>Finding a good Drupal developer is harder to find than that of Wordpress or other systems. It’s not hard to guess this considering the number of Wordpress developers compared with Drupal.</li></ul>\r\nIt always takes some investments to learn about something. For a new user, it would be a huge opportunity cost - what you will gain and lose working with one system and leave others behind.\r\nBut after all the choice is always yours.We expect it would be worth. The CMS you will spend thousands hours working. The system through this you make a living. The option that yields energy and satisfaction.","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_Drupal_Development__1_.png","alias":"drupal-development"},"621":{"id":621,"title":"WordPress","description":"","materialsDescription":"","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_WordPress.png","alias":"wordpress"},"623":{"id":623,"title":"Magento Development","description":" Magento is an open-source e-commerce platform written in PHP. It is one of the most popular open e-commerce systems in the network. This software is created using the Zend Framework. Magento source code is distributed under an Open Source Initiative (OSI) approved by the Open Software License (OSL) v3.0, which is similar to the AGPL but not GPL compliant.\r\nThe software was originally developed by Varien, Inc, a US private company headquartered in Culver City, California, with assistance from volunteers.\r\nMore than 100,000 online stores have been created on this platform. The platform code has been downloaded more than 2.5 million times, and $155 billion worth of goods have been sold through Magento-based systems in 2019. Two years ago, Magento accounted for about 30% of the total market share.\r\nVarien published the first general-availability release of the software on March 31, 2008. Roy Rubin, the former CEO of Varien, later sold a share of the company to eBay, which eventually completely acquired and then sold the company to Permira; Permira later sold it to Adobe.\r\nOn November 17, 2015, Magento 2.0 was released. Among the features changed in V2 are the following: reduced table locking issues, improved page caching, enterprise-grade scalability, inbuilt rich snippets for structured data, new file structure with easier customization, CSS Preprocessing using LESS & CSS URL resolver, improved performance and a more structured code base. Magento employs the MySQL or MariaDB relational database management system, the PHP programming language, and elements of the Zend Framework. It applies the conventions of object-oriented programming and model–view–controller architecture. Magento also uses the entity–attribute–value model to store data. On top of that, Magento 2 introduced the Model-View-ViewModel pattern to its front-end code using the JavaScript library Knockout.js.","materialsDescription":" <span style=\"font-weight: bold;\">What is Magento? What is the benefit of choosing an Open Source platform?</span>\r\nMagento is an open-source eCommerce platform that enables the online business owners to control their online store and add powerful and flexible tools for marketing, catalog management, and search engine optimization.\r\nThe open-source platform offers much more innovation, customization, quality, support and agility at a very low cost. It enables the users to share and access the platform, add rich features according to the needs, thereby making changes more effective and easier.\r\n<span style=\"font-weight: bold;\">How can my Magento site be at par with the latest mobile trends and activities?</span>\r\nResponsive designs, device-specific applications have brought a great change in the business world over the past few years. Magento’s latest version includes a responsive template, and it offers great features that meet the needs of the mobile world both for the B2B and the B2C businesses.\r\n<span style=\"font-weight: bold;\">What should be included in my eCommerce Magento strategy?</span>\r\nBefore you plan to start with your Magento project, it is very important to write down the business goals of your website. This will help you to measure success. Once you are done with this, you can plan for the remaining strategies that include target audience, personalization, content plan, mobile strategy, third party add-ons and support services that you would require to keep your site running and performing.","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_Magento_Development.png","alias":"magento-development"},"625":{"id":625,"title":"Typo3 Development","description":" TYPO3 is a free and open-source Web content management system written in PHP. It is released under the GNU General Public License. It can run on several web servers, such as Apache or IIS, on top of many operating systems, among them Linux, Microsoft Windows, FreeBSD, macOS and OS/2.\r\nTYPO3 is, along with Drupal, Joomla! and WordPress, among the most popular content management systems worldwide, however it is more widespread in Europe than in other regions. The biggest market share can be found in German-speaking countries.\r\nTYPO3 is credited to be highly flexible, as code and content are operated separately. It can be extended by new functions without writing any program code. Also, the software is available in more than 50 languages and has a built-in localization system, therefore supports publishing content in multiple languages. Due to its features like editorial workplace and workflow, advanced frontend editing, scalability and maturity, TYPO3 is used to build and manage websites of different types and size ranges, from small sites for individuals or nonprofit organizations to multilingual enterprise solutions for large corporations. According to the ability to support a corporate environment, it classifies itself as an enterprise level content management system.\r\nTYPO3 was initially authored by the Dane Kasper Skårhøj in 1997. It is now developed by over 300 contributors under the lead of Benjamin Mack (Core team leader) and Mathias Schreiber (Product Owner).\r\nCalculations from the TYPO3 Association show that it is currently used in more than 500,000 installations. The number of installations detected by the public website "CMS Crawler" was around 384,000 by February 2017.","materialsDescription":" <span style=\"font-weight: bold; \">What is the official site of TYPO3?</span>\r\nhttps://typo3.org/ :: TYPO3 — the Professional, Flexible Content Management System. TYPO3 CMS is an Open Source Enterprise Content Management System with a large global community, backed by the approximately 900 members of the TYPO3 Association.\r\n<span style=\"font-weight: bold; \">Where did the name TYPO3 come from?</span>\r\nTYPO3 creator Kasper Skårhøj remembers it something like this:\r\nBack in the late 1990s, while still working on the initial version of his new CMS, he was looking for a name for the new software. At the time, the name “freestyle” appealed to him, but it posed some problems through its over-association with certain activities, products and trademarks. So the issue of naming stayed on the back burner for want of a better idea.\r\nThen, one Friday evening while he was alone in the office after hours coding, Kasper inadvertently typed an error into the command line of his Linux server and accidentally deleted a whole week work. He recalls that feeling you get of a cold rush through the body, when you realize something dreadful has happened. Slowly he got up, walked to the other end of the room and sat down in the couch looking back across the office at the laptop on his desk.\r\nHe stayed like this for a while, just staring out into the room. Then, after the initial shock had subsided, he walked back, sat down, and began to recreate the lost code. This went surprisingly quickly; as such things do when you have them fully worked out in your head. And it was during this new rush of adrenaline and the satisfaction that all was not actually lost, that he began to put the incident into perspective. The recreated programming was going smoothly and cleanly, which made him wonder how ironic it would be if a typo ended up actually improving the product! It was this thought that first brought up the expression “typo” as a possible name. It seemed to fit especially well because\r\n<ul><li>“typo”, as in typography, had something to do with layout and content and</li><li>“typo”, as in a typing mistake, now had a quirky share in the product’s history.</li></ul>\r\nThe newborn child now had a name.\r\nOriginally there were Typo versions 1, 2 and 2.5. But with the success of version 3, which had branded itself more or less by default, a “3” was eventually appended to the product title itself. Since the launch of “TYPO3 version 4”, TYPO3 has remained as the product name for all future versions. So, TYPO3 it is called … and TYPO3 it will continue to be.\r\n<span style=\"font-weight: bold; \">What is TYPO3?</span>\r\nTYPO3 is a free and open-source Web content management system written in PHP. It is released under the GNU General Public License. It can run on several web servers, such as Apache or IIS, on top of many operating systems, among them Linux, Microsoft Windows, FreeBSD, macOS and OS/2.\r\n<span style=\"font-weight: bold; \">Why use TYPO3?</span>\r\nBecause TYPO3 is the CMS for you! TYPO3 is an Enterprise Content Management System. If you need to create, manage and output any kind of digital content, TYPO3 is the right tool for you. You can start small and grow fast, but while your business case might change - you'll never need to change the Content Management System since TYPO3 adapts to your needs.\r\n<span style=\"font-weight: bold;\">What are the system requirements?</span>\r\n<ul><li>Operating System: Linux, Windows or Mac, or common cloud infrastructure setups</li><li>Webserver: Apache httpd, Nginx, Microsoft IIS, Caddy Server</li><li>PHP: PHP >= 7.2</li><li>Database: PostgreSQL //Microsoft SQL Server //MariaDB(>= 10.2) //MySQL(>= 5) //SQLite</li><li>Hardware: RAM >= 256 MB</li><li>Supported Browsers: Chrome (latest) //Firefox (latest) //Safari (latest) //Edge (latest) //Internet Explorer (>= 11)</li></ul>","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_Typo3_Development.png","alias":"typo3-development"},"627":{"id":627,"title":"CSS Development","description":" Cascading Style Sheets (CSS) is a style sheet language used for describing the presentation of a document written in a markup language like HTML. CSS is a cornerstone technology of the World Wide Web, alongside HTML and JavaScript.\r\nCSS is designed to enable the separation of presentation and content, including layout, colors, and fonts. This separation can improve content accessibility, provide more flexibility and control in the specification of presentation characteristics, enable multiple web pages to share formatting by specifying the relevant CSS in a separate .css file, and reduce complexity and repetition in the structural content.\r\nSeparation of formatting and content also makes it feasible to present the same markup page in different styles for different rendering methods, such as on-screen, in print, by voice (via speech-based browser or screen reader), and on Braille-based tactile devices. CSS also has rules for alternate formatting if the content is accessed on a mobile device.\r\nThe name cascading comes from the specified priority scheme to determine which style rule applies if more than one rule matches a particular element. This cascading priority scheme is predictable.\r\nThe CSS specifications are maintained by the World Wide Web Consortium (W3C). Internet media type (MIME type) text/css is registered for use with CSS by RFC 2318 (March 1998). The W3C operates a free CSS validation service for CSS documents.\r\nIn addition to HTML, other markup languages support the use of CSS including XHTML, plain XML, SVG, and XUL.\r\nBefore CSS, nearly all presentational attributes of HTML documents were contained within the HTML markup. All font colors, background styles, element alignments, borders and sizes had to be explicitly described, often repeatedly, within the HTML. CSS lets authors move much of that information to another file, the style sheet, resulting in considerably simpler HTML.","materialsDescription":" <span style=\"font-weight: bold;\">Which is better: plain HTML or HTML with CSS?</span>\r\nMany site developers wonder why you need CSS if you can use plain HTML. Most likely, they only know the development of the site and have a number of gaps in knowledge. The bottom line is that HTML is used to structure the content of a page. And CSS allows you to format this content, make it more attractive to users.\r\nWhen the World Wide Web was created, the developers used only one language - HTML. It was used as a means of outputting structured text. The author had scant functional at his disposal. The maximum that could be done - to designate the title, select the paragraph. Tags were not enough.\r\nIn connection with the development of the Internet, the base of HTML language tags was expanded to allow the appearance of documents to be adjusted. At the same time, the structure remained unchanged.\r\nStructuring tags, for example <table>, began to spread. It was they who were more often chosen to design the pages instead of the structure itself. Some browsers offered their own tags, which only they could reproduce.\r\nThus, users often stumbled upon the message: "To view a page, you need to use browser XXX."\r\nTo correct the situation and create a single database of tags for formatting was created CSS. He allowed refusing to bind tags to browsers.\r\nUsing HTML with CSS is more convenient than using plain HTML. CSS provides the following benefits:\r\n<ul><li>Designed to the smallest detail.</li><li>Using a single table, you can manage various documents.</li><li>You can customize the page display options for different devices: computer screen, smartphone screen, etc.</li></ul>\r\n<span style=\"font-weight: bold;\">Website Promotion with CSS</span>\r\nThe emergence and development of CSS have made the development of web resources more efficient and effective. Now it’s much easier and more convenient to control the design. Also, using CSS, we managed to reduce the code of the pages, their size. This had a positive impact on the download speed, the indexing also began to pass faster. The use of an adaptive approach allowed us to make a breakthrough in the field of mobile versions of Internet resources.\r\nTo improve the website promotion, experts recommend placing the CSS style sheets in a separate document so as not to increase the amount of code. You can create one or more such files.\r\nPreviously, search engines could not read style sheets, which made it possible to use them in black SEO, for example, to create invisible texts. Now it is better to abandon the use of CSS for other purposes.\r\nCSS has several advantages and allows you to improve the site, making it more attractive to visitors. However, it is important to correctly register all the elements.","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_CSS_Development.png","alias":"css-development"},"629":{"id":629,"title":"PHP Development","description":"PHP is a general-purpose programming language originally designed for web development. It was originally created by Rasmus Lerdorf in 1994; the PHP reference implementation is now produced by The PHP Group. PHP originally stood for Personal Home Page, but it now stands for the recursive initialism PHP: Hypertext Preprocessor.\r\nPHP code may be executed with a command line interface (CLI), embedded into HTML code, or used in combination with various web template systems, web content management systems, and web frameworks. PHP code is usually processed by a PHP interpreter implemented as a module in a web server or as a Common Gateway Interface (CGI) executable. The web server outputs the results of the interpreted and executed PHP code, which may be any type of data, such as generated HTML code or binary image data. PHP can be used for many programming tasks outside of the web context, such as standalone graphical applications and robotic drone control.\r\nThe standard PHP interpreter, powered by the Zend Engine, is free software released under the PHP License. PHP has been widely ported and can be deployed on most web servers on almost every operating system and platform, free of charge.\r\nThe PHP language evolved without a written formal specification or standard until 2014, with the original implementation acting as the de facto standard which other implementations aimed to follow. Since 2014, work has gone on to create a formal PHP specification.\r\nAs of September 2019, over 60% of sites on the web using PHP are still on discontinued/"EOLed" version 5.6 or older; versions prior to 7.2 are no longer officially supported by The PHP Development Team, but security support is provided by third parties, such as Debian.","materialsDescription":" <span style=\"font-weight: bold; \">What is PHP?</span>\r\nPHP stands for Hypertext Preprocessor. It is an open-source server-side scripting language that is widely used for web development. It supports many databases like MySQL, Oracle, Sybase, Solid, PostgreSQL, generic ODBC, etc.\r\n<span style=\"font-weight: bold; \">What is PEAR in PHP?</span>\r\nPEAR is a framework and repository for reusable PHP components. PEAR stands for PHP Extension and Application Repository. It contains all types of PHP code snippets and libraries. It also provides a command-line interface to install "packages" automatically.\r\n<span style=\"font-weight: bold; \">Who is known as the father of PHP?</span>\r\nRasmus Lerdorf.\r\n<span style=\"font-weight: bold; \">What was the old name of PHP?</span>\r\nThe old name of PHP was Personal Home Page.\r\n<span style=\"font-weight: bold; \">Explain the difference b/w static and dynamic websites?</span>\r\nIn static websites, content can't be changed after running the script. You can't change anything on the site. It is predefined.\r\nIn dynamic websites, the content of a script can be changed at the run time. Its content is regenerated every time a user visits or reload. Google, yahoo and every search engine is an example of a dynamic website.\r\n<span style=\"font-weight: bold; \">What is the name of the scripting engine in PHP?</span>\r\nThe scripting engine that powers PHP is called Zend Engine 2.","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_PHP_Development.png","alias":"php-development"},"631":{"id":631,"title":"CakePHP Development","description":" CakePHP is an open-source web framework. It follows the model–view–controller (MVC) approach and is written in PHP, modeled after the concepts of Ruby on Rails, and distributed under the MIT License.\r\nCakePHP uses well-known software engineering concepts and software design patterns, such as convention over configuration, model–view–controller, active record, association data mapping, and front controller.\r\nCakePHP started in April 2005, when a Polish programmer Michal Tatarynowicz wrote a minimal version of a rapid application development in PHP, dubbing it Cake. He published the framework under the MIT license, and opened it up to the online community of developers. In December 2005, L. Masters and G. J. Woodworth founded the Cake Software Foundation to promote development related to CakePHP. Version 1.0 was released on May 2006.\r\nOne of the project's inspirations was Ruby on Rails, using many of its concepts. The community has since grown and spawned several sub-projects.\r\nIn October 2009, project manager Woodworth and developer N. Abele resigned from the project to focus on their own projects, including the Lithium web framework (previously part of the CakePHP project). The remaining development team continued to focus on the original roadmap that was previously defined.","materialsDescription":" <span style=\"font-weight: bold;\">What is CakePHP? Why it’s Useful?</span>\r\nCakePHP is a free, open-source, rapid development framework for PHP. It’s a fundamental framework for developers to produce web applications.\r\nCakePHP has an active developer team and also the community, bringing terrific worth to the job. Along with maintaining you from wheel-reinventing, utilizing CakePHP suggests your application’s core is well examined as well as is being continuously boosted.\r\nBelow’s a quick listing of functions you’ll delight in when using CakePHP:\r\n<ul><li>Active, friendly community</li><li>Flexible licensing</li><li>Suitable with variations 4 and also 5 of PHP</li><li>Integrated CRUD for database Interaction</li><li>Application scaffolding</li><li>Code generation</li><li>MVC architecture</li><li>Request dispatcher with clean, customized URLs as well as routes</li><li>Integrated validation</li><li>Fast and also adaptable template (PHP phrase framework, with helpers)</li><li>Look for Helpers for AJAX, JavaScript, HTML Forms as well as a lot more</li><li>Email, Cookie, Security, Session, and also Request Handling Components</li><li>Flexible ACL</li><li>Data Sanitization</li><li>Flexible Caching</li><li>Localization</li><li>Works from any kind of web site directory site, with little to no Apache setup involved</li></ul>","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_CakePHP_Development.png","alias":"cakephp-development"},"635":{"id":635,"title":"Python Development","description":" Python is an interpreted, high-level, general-purpose programming language. Created by Guido van Rossum and first released in 1991, Python's design philosophy emphasizes code readability with its notable use of significant whitespace. Its language constructs and object-oriented approach aim to help programmers write clear, logical code for small and large-scale projects.\r\nPython is dynamically typed and garbage-collected. It supports multiple programming paradigms, including procedural, object-oriented, and functional programming. Python is often described as a "batteries included" language due to its comprehensive standard library.\r\nPython was conceived in the late 1980s as a successor to the ABC language. Python 2.0, released in 2000, introduced features like list comprehensions and a garbage collection system capable of collecting reference cycles. Python 3.0, released in 2008, was a major revision of the language that is not completely backward-compatible, and much Python 2 code does not run unmodified on Python 3.\r\nThe Python 2 language, i.e. Python 2.7.x, was officially discontinued on 1 January 2020 (first planned for 2015) after which security patches and other improvements will not be released for it. With Python 2's end-of-life, only Python 3.5.x and later are supported.\r\nPython interpreters are available for many operating systems. A global community of programmers develops and maintains CPython, an open source reference implementation. A non-profit organization, the Python Software Foundation, manages and directs resources for Python and CPython development.\r\nPython is a multi-paradigm programming language. Object-oriented programming and structured programming are fully supported, and many of its features support functional programming and aspect-oriented programming (including by metaprogramming and metaobjects (magic methods)). Many other paradigms are supported via extensions, including design by contract and logic programming.\r\nPython uses dynamic typing and a combination of reference counting and a cycle-detecting garbage collector for memory management. It also features dynamic name resolution (late binding), which binds method and variable names during program execution.\r\nPython's design offers some support for functional programming in the Lisp tradition. It has filter, map, and reduce functions; list comprehensions, dictionaries, sets, and generator expressions. The standard library has two modules (itertools and functools) that implement functional tools borrowed from Haskell and Standard ML.","materialsDescription":" <span style=\"font-weight: bold;\">What is Python?</span>\r\nPython is an interpreted, interactive, object-oriented programming language. It incorporates modules, exceptions, dynamic typing, very high level dynamic data types, and classes. Python combines remarkable power with very clear syntax. It has interfaces to many system calls and libraries, as well as to various window systems, and is extensible in C or C++. It is also usable as an extension language for applications that need a programmable interface. Finally, Python is portable: it runs on many Unix variants, on the Mac, and on Windows 2000 and later.\r\n<span style=\"font-weight: bold;\">What is the Python Software Foundation?</span>\r\nThe Python Software Foundation is an independent non-profit organization that holds the copyright on Python versions 2.1 and newer. The PSF’s mission is to advance open source technology related to the Python programming language and to publicize the use of Python. The PSF’s home page is at <link https://www.python.org/psf/.>https://www.python.org/psf/.</link>\r\n<span style=\"font-weight: bold;\">Are there copyright restrictions on the use of Python?</span>\r\nYou can do anything you want with the source, as long as you leave the copyrights in and display those copyrights in any documentation about Python that you produce. If you honor the copyright rules, it’s OK to use Python for commercial use, to sell copies of Python in source or binary form (modified or unmodified), or to sell products that incorporate Python in some form. We would still like to know about all commercial use of Python, of course.\r\n<span style=\"font-weight: bold;\">What is Python good for?</span>\r\nPython is a high-level general-purpose programming language that can be applied to many different classes of problems.\r\nThe language comes with a large standard library that covers areas such as string processing (regular expressions, Unicode, calculating differences between files), Internet protocols (HTTP, FTP, SMTP, XML-RPC, POP, IMAP, CGI programming), software engineering (unit testing, logging, profiling, parsing Python code), and operating system interfaces (system calls, filesystems, TCP/IP sockets). Look at the table of contents for The Python Standard Library to get an idea of what’s available. A wide variety of third-party extensions are also available. Consult the Python Package Index to find packages of interest to you.<br /><br />","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_Python_Development.png","alias":"python-development"},"637":{"id":637,"title":"eCommerce development","description":" Electronic commerce is an online transaction of buying and selling products through World Wide Web-based websites and mobile applications. The examples of eCommerce business include supply chain, funds transfer, banking and electronic data interchange (EDI) and others. The electronic transactions are carried out through many eCommerce software platforms and eCommerce applications that are integrated with online websites with the help of eCommerce developers. The eCommerce applications are linked with the payment gateways for a smooth transfer of credit from one entity to another one.\r\nAn eCommerce developer is a very important role in eCommerce app development and web services to realize the power of online sales and marketing in all domains of businesses. The eCommerce developers are normally the web developers with additional exposure to the eCommerce tools and platforms commonly used in online businesses. HTML, CSS, JavaScript, Python, PHP, Ruby on Rail and related technologies are the fundamental components of eCommerce developer skills. In addition to those skills, the knowledge of eCommerce software platforms and API integration is very important for a good eCommerce developer resume.\r\nA good eCommerce website should be highly professional looking with great features and intuitive interface for the checkout process. This is only possible with the help of professional eCommerce developers. You need to evaluate a lot of things before you decide to hire eCommerce developers such as the backend technologies of your website, type of eCommerce, a domain of business, type of database and many others. Once you have decided about all these things, you need to match the eCommerce web developer resume, which is under consideration, with those factors to find a good eCommerce developer.","materialsDescription":" <span style=\"font-weight: bold;\">Why is it important for business owners to create an eСommerce site?</span>\r\nToday, people have very less time to purchase items, by going to physical stores. They prefer to browse their mobile devices or PC and shop online. Having an e-commerce site for your business will help you to capture this market base and keep your customers informed about all your latest products and services.\r\n<span style=\"font-weight: bold;\">How can I choose the best platform for my eСommerce business website?</span>\r\nBefore getting started with your eСommerce web development, consider the few fundamentals that can help to choose the best platform. Always consider the items that you are selling. Some eСommerce platforms can handle inventory tracking and multiple product options while some others will not. Consider the design options, payment gateways, the security of the site, integration with other tools, features and pricing before finalizing on the platform.\r\n<span style=\"font-weight: bold;\">How should I promote my eСommerce site?</span>\r\nThere are various ways to do this and the first thing to do is to promote the site to all the customers. This will help to increase your customer base. Your website address should be present in every advertisement that your company invests in. Register with the search engines and optimize your website as this will affect the traffic of your site.\r\n<span style=\"font-weight: bold;\">What are the important things that can turn browsers into buyers?</span>\r\nCreate your site so that it is much more oriented towards sales rather than marketing. Let your visitors see your products immediately instead of hiding them behind lots of marketing copy. Make a page that reads the terms and conditions as it will offer a professional look. Provide your contact details and explain your return policies, security, encryption methods, and payment options.\r\n<span style=\"font-weight: bold;\">How to create an impressive website?</span>\r\nThe beauty of a site lies in the way it operates and how user-friendly it is. Ensure that your site is fast, easy to use, professional and attractive. Also, make sure that you are able to fulfill the orders very promptly without any delay. In case you are unable to offer the service, make sure that your customer is informed about it via email.\r\n<span style=\"font-weight: bold;\">What are the security risks that are involved with eСommerce sites?</span>\r\neCommerce website owners should always keep in mind the three dimensions of security - confidentiality, integrity, and availability. Business owners should develop a good strategy that can help to make the site and transactions secured. To avoid any hackers gain access to important confidential data, include encryption methods for any data transactions.\r\n<span style=\"font-weight: bold;\">Is there any limit on the size of my product or customer database?</span>\r\nNo, as such there are no limits on the size. The biggest benefit of having an online store is that you can add unlimited products and catalogs and at the same time you can grow your customer base as you require.","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_eCommerce_development.png","alias":"ecommerce-development"},"639":{"id":639,"title":"HTML Development","description":" Hypertext Markup Language (HTML) is the standard markup language for documents designed to be displayed in a web browser. It can be assisted by technologies such as Cascading Style Sheets (CSS) and scripting languages such as JavaScript.\r\nWeb browsers receive HTML documents from a web server or from local storage and render the documents into multimedia web pages. HTML describes the structure of a web page semantically and originally included cues for the appearance of the document.\r\nHTML elements are the building blocks of HTML pages. With HTML constructs, images and other objects such as interactive forms may be embedded into the rendered page. HTML provides a means to create structured documents by denoting structural semantics for text such as headings, paragraphs, lists, links, quotes and other items. HTML elements are delineated by tags, written using angle brackets. Tags such as <img /> and <input /> directly introduce content into the page. Other tags such as <p> surround and provide information about document text and may include other tags as sub-elements. Browsers do not display the HTML tags, but use them to interpret the content of the page.\r\nHTML can embed programs written in a scripting language such as JavaScript, which affects the behavior and content of web pages. Inclusion of CSS defines the look and layout of content. The World Wide Web Consortium (W3C), former maintainer of the HTML and current maintainer of the CSS standards, has encouraged the use of CSS over explicit presentational HTML since 1997.","materialsDescription":" <span style=\"font-weight: bold;\">What is HTML5?</span>\r\nHTML5 contains powerful capabilities for Web-based applications with more powerful interaction, video support, graphics, more styling effects, and a full set of APIs. HTML5 adapts to any device, whether desktop, mobile, tablet, or television. HTML5 is an open platform developed under royalty-free licensing terms.\r\nPeople use the term HTML5 in two ways:\r\n<ul><li>to refer to a set of technologies that together form the future Open Web Platform. These technologies include HTML5 specification, CSS3, SVG, MathML, Geolocation, XmlHttpRequest, Context 2D, Web Fonts (WOFF) and others. The boundary of this set of technologies is informal and changes over time;</li><li>to refer to the HTML5 specification, which is, of course, also part of the Open Web Platform.</li></ul>\r\nAlthough it would be great if people used one term to refer to the specification and another term to refer to a set of specifications, in practice people use the term both ways.\r\n<span style=\"font-weight: bold;\">HTML5 has been cited by many thought leaders as the future of the Web. Why is HTML5 generating this excitement?</span>\r\nThere is huge demand for open standards that allow the creation of rich internet applications. Watching videos, finding the nearest restaurant, accessing emails while being offline are just some of the powerful new capabilities enabled by the set of specifications in development at W3C.\r\nOne aspect that interests W3C, in particular, is enabling people to combine different technologies. W3C works to ensure not just interoperable support in the software of a single specification, but compatibility among specifications.\r\nEven though HTML5 is still a draft, browser vendors are deploying features and generating a lot of excitement in the IT industry. This experience, in turn, allows W3C to revise its drafts. In this way, the final standard can transparently inform implementers where they need to pay close attention to security and privacy issues.\r\n<span style=\"font-weight: bold;\">When can I use HTML5?</span>\r\nPeople can already use parts of the platform that interoperate, but W3C's mission is global interoperable, to ensure that the web is available to all. Not all elements are fully implemented yet and some of them provide builtin fallback mechanisms, such as <video> or <input>. One can use HTML5 today, knowing the existing limitations and ensuring proper fallbacks.\r\n<span style=\"font-weight: bold;\">Which Web Browsers support HTML5?</span>\r\nW3C encourages implementation and testing long before a specification becomes a standard to ensure that two people can read a specification independently and write interoperable software. Early adopters provide implementers and W3C with tremendously valuable feedback because they help identify where interoperability issues exist.\r\n<span style=\"font-weight: bold;\">Do you think that the benefits of HTML5, such as its neutrality, rich graphics, no need plug-ins, outweigh the security risk it carries?</span>\r\nNow entering its third decade, the Web has evolved from a Web of documents into a formidable platform for networked applications that let us share information and services over the Internet. In this highly connected environment, it is important that powerful Web applications be designed with sensitivity to user privacy and security needs. The risks associated with modern Web applications are familiar to the HTML5 community.\r\nHTML5 and related specifications are being developed in W3C's open standards process. This process allows an expert review of features along with their security and privacy implications. Rich functionality that was previously available only through proprietary plugins is now documented in an open specification for all experts to review and improve. We're pleased to see the HTML5 specifications subject to rigorous public review since that helps make the Web a more secure environment.\r\nSome security issues are not confined to HTML5. W3C and IETF are working closely to specify technologies and protocol extensions to mitigate some issues (such as cross-site request forgery and cross-site scripting).\r\n<span style=\"font-weight: bold;\">Will there be an HTML6?</span>\r\nNo work is currently happening on HTML6 but feature requests that are not planned to be addressed in HTML5 are available at listed under HTML.next.","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_HTML_Development.png","alias":"html-development"},"641":{"id":641,"title":"XML Development","description":"","materialsDescription":"","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_XML_Development.png","alias":"xml-development"},"643":{"id":643,"title":"AJAX Development","description":" Ajax (also AJAX; short for asynchronous JavaScript and XML) is a set of web development techniques using many web technologies on the client side to create asynchronous web applications. With Ajax, web applications can send and retrieve data from a server asynchronously (in the background) without interfering with the display and behavior of the existing page. By decoupling the data interchange layer from the presentation layer, Ajax allows web pages and, by extension, web applications, to change content dynamically without the need to reload the entire page. In practice, modern implementations commonly utilize JSON instead of XML.\r\nAjax is not a single technology, but rather a group of technologies. HTML and CSS can be used in combination to mark up and style information. The webpage can then be modified by JavaScript to dynamically display—and allow the user to interact with—the new information. The built-in XMLHttpRequest object within JavaScript is commonly used to execute Ajax on webpages allowing websites to load content onto the screen without refreshing the page. Ajax is not a new technology, or different language, just existing technologies used in new ways.\r\nThe term Ajax has come to represent a broad group of Web technologies that can be used to implement a Web application that communicates with a server in the background, without interfering with the current state of the page. In the article that coined the term Ajax, Jesse James Garrett explained that the following technologies are incorporated:\r\n<ul><li>HTML (or XHTML) and CSS for presentation</li><li>The Document Object Model (DOM) for dynamic display of and interaction with data</li><li>JSON or XML for the interchange of data, and XSLT for its manipulation</li><li>The XMLHttpRequest object for asynchronous communication</li><li>JavaScript to bring these technologies together</li></ul>\r\nSince then, however, there have been a number of developments in the technologies used in an Ajax application, and in the definition of the term Ajax itself. XML is no longer required for data interchange and, therefore, XSLT is no longer required for the manipulation of data. JavaScript Object Notation (JSON) is often used as an alternative format for data interchange, although other formats such as preformatted HTML or plain text can also be used. A variety of popular JavaScript libraries, including JQuery, include abstractions to assist in executing Ajax requests.\r\nAsynchronous HTML and HTTP (AHAH) involves using XMLHTTPRequest to retrieve (X)HTML fragments, which are then inserted directly into the Web page.","materialsDescription":" <span style=\"font-weight: bold;\">What Is AJAX?</span>\r\nAJAX is an acronym that stands for Asynchronous JavaScript and XML, and it describes a set of development techniques used for building websites and web applications. According to web developer and Skillcrush WordPress instructor Ann Cascarano, the best way to understand AJAX is to start with identifying its specific purpose in the web development process. AJAX’s core function is to update web content asynchronously (the “A” of AJAX), meaning a user’s web browser doesn’t need to reload an entire web page when only a small portion of content on the page needs to change.\r\nOne of the most ubiquitous examples of asynchronous updating is Google’s “Google Suggest” feature. When you enter a search query into Google’s search bar and the Google website automatically begins offering auto-complete options while you type, that’s AJAX in action. The content on the page changes (in this case, the auto-complete options in the search bar) without having to manually refresh the page (something that would make Google Suggest impractical to use). Features like Google Suggest are a fundamental part of contemporary web browsing, which points to how essential AJAX is in web development. In addition to Google Suggest, Cascarano says that AJAX is commonly used to update features like status and notification bars, online forms, comments sections, and surveys and polls. But what exactly are the “J” and “X” of AJAX and how do they make asynchronous updating possible?\r\n<span style=\"font-weight: bold;\">JavaScript and XML</span>\r\nAs mentioned above, the “J” in AJAX stands for JavaScript. JavaScript is a type of scripting language—coding languages used to automate website processes so web developers don’t have to individually program each instance of the process that appears on a page. In JavaScript’s case, it’s used specifically to create, add, and manage dynamic website content. In other words, after markup languages like HTML and CSS are used to build and display static web features (headers, fonts, paragraphs, etc.), JavaScript is then used to control features that require real time updates while a visitor is viewing a page (think interactive maps, animated graphics, scrolling video, jukeboxes, etc). Since JavaScript is in the business of updating page content without requiring viewers to manually reload entire pages, it’s a critical component for AJAX’s asynchronous updating.\r\nThe “X” in AJAX is XML (Extensible Markup Language). As its name suggests, XML is a markup language, which means it’s in the same family as languages like HTML and CSS. Markup languages are coding languages used to annotate parts of a web document that are intended to give web browsers instructions about how to understand, process, and display a web page, versus the actual text intended to be displayed on the page. While HTML and CSS focus on instructing how page content is displayed (paragraphs, headers, fonts, colors, etc.), XML is used to transfer data stored on the page to the browsers that view it. Individual computer systems are often incompatible with one another and can’t understand or interact with data formatted by a different system. XML allows developers to bypass this obstacle by storing data in plain text format between XML tags. By doing this, XML offers a way of storing, moving, and sharing data that isn’t dependent on a particular software or hardware system (something that’s crucial for the internet, where data needs to be available and understandable across all software and hardware platforms). RSS feeds—subscription web feeds that allow users to access content from blogs and news sources as they are updated in real time—are built with XML and are an example of the language’s practical data-sharing capabilities. But how does XML combine with JavaScript to form AJAX?\r\n<span style=\"font-weight: bold;\">How Does AJAX Work?</span>\r\nAccording to Cascarano, JavaScript and XML combine to make asynchronous updating happen through the use of something called an XMLHttpRequest object. When a user visits a web page designed to make use of AJAX and a prescribed event occurs (the user loads the page, clicks a button, fills out a form, etc.) JavaScript creates an XMLHttpRequest object, which then transfers data in an XML format between a web browser (the program being used to view the website) and a web server (the software or hardware where a website’s data is stored). The XMLHttpRequest object sends a request for updated page data to the web server, the server process the request, a response is created server-side and sent back to the browser, which then uses JavaScript to process the response and display it on the screen as updated content.\r\nTo recap: JavaScript automates the updating process, the request for updated content is formatted in XML to make it universally understandable, and JavaScript again kicks in to refresh the relevant content for the user viewing the page. Cascarano notes that the AJAX technique ignores extraneous page data and only handles requests for updated information and the updated information itself. This is really the heart of AJAX’s effectiveness, making websites and applications that use AJAX faster and more responsive for users.","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_AJAX_Development.png","alias":"ajax-development"},"645":{"id":645,"title":"JavaScript development","description":" JavaScript, often abbreviated as JS, is a high-level, just-in-time compiled, object-oriented programming language that conforms to the ECMAScript specification. JavaScript has curly-bracket syntax, dynamic typing, prototype-based object-orientation, and first-class functions.\r\nAlongside HTML and CSS, JavaScript is one of the core technologies of the World Wide Web. JavaScript enables interactive web pages and is an essential part of web applications. The vast majority of websites use it, and major web browsers have a dedicated JavaScript engine to execute it.\r\nAs a multi-paradigm language, JavaScript supports event-driven, functional, and imperative (including object-oriented and prototype-based) programming styles. It has APIs for working with text, arrays, dates, regular expressions, and the DOM, but the language itself does not include any I/O, such as networking, storage, or graphics facilities. It relies upon the host environment in which it is embedded to provide these features.\r\nInitially only implemented client-side in web browsers, JavaScript engines are now embedded in many other types of host software, including server-side in web servers and databases, and in non-web programs such as word processors and PDF software, and in runtime environments that make JavaScript available for writing mobile and desktop applications, including desktop widgets.\r\nThe terms Vanilla JavaScript and Vanilla JS refer to JavaScript not extended by any frameworks or additional libraries. Scripts written in Vanilla JS are plain JavaScript code.\r\nAlthough there are similarities between JavaScript and Java, including language name, syntax, and respective standard libraries, the two languages are distinct and differ greatly in design. JavaScript was influenced by programming languages such as Self and Scheme. The JSON serialization format, used to store data structures in files or transmit them across networks, is based on JavaScript.\r\n"JavaScript" is a trademark of Oracle Corporation in the United States. It is used under license for technology invented and implemented by Netscape Communications and current entities such as the Mozilla Foundation.","materialsDescription":" <span style=\"font-weight: bold;\">What is JavaScript?</span>\r\nJavaScript is a client-side as well as a server-side scripting language that can be inserted into HTML pages and is understood by web browsers. JavaScript is also an Object-based Programming language.\r\n<span style=\"font-weight: bold;\">What are the differences between Java and JavaScript?</span>\r\nJava is a complete programming language. In contrast, JavaScript is a coded program that can be introduced to HTML pages. These two languages are not at all inter-dependent and are designed for different intent. Java is an object-oriented programming (OOPS) or structured programming languages like C++ or C whereas JavaScript is a client-side scripting language.\r\n<span style=\"font-weight: bold;\">Do I have to buy JavaScript?</span>\r\nNo--there is nothing to buy. The JavaScript interpreter is included in all major Internet Browsers--so as long as you have an Internet Browser, you're all set. JavaScript source files are written using an ordinary text editor, such as Notepad.\r\n<span style=\"font-weight: bold;\">What is JScript?</span>\r\nJScript is Microsoft's version of Netscape's JavaScript. Each Internet Browser vendor creates their own version of what is collectively known as JavaScript---however, the latest versions of these browsers are moving towards the ECMA Script standard.\r\n<span style=\"font-weight: bold;\">Who 'owns' JavaScript?</span>\r\nECMA governs the standard features of JavaScript---however, each vendor writes the code for their own versions of JavaScript.\r\n<span style=\"font-weight: bold;\">What are the features of JavaScript?</span>\r\n<ul><li>JavaScript is a lightweight, interpreted programming language.</li><li>JavaScript is designed for creating network-centric applications.</li><li>JavaScript is complementary to and integrated with Java.</li><li>JavaScript is complementary to and integrated with HTML.</li><li>JavaScript is open and cross-platform.</li></ul>","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_JavaScript_development.png","alias":"javascript-development"},"649":{"id":649,"title":"QA - Quality assurance","description":" <span style=\"font-weight: bold; \">Quality Assurance (QA)</span> is defined as an activity to ensure that an organization is providing the best possible product or service to customers. QA focuses on improving the processes to deliver Quality Products to the customer. An organization has to ensure, that processes are efficient and effective as per the quality standards defined for software products. Quality Assurance is popularly known as <span style=\"font-weight: bold; \">QA Testing. </span>\r\nQA establishes and maintains set requirements for developing or manufacturing reliable products. A quality assurance system is meant to increase customer confidence and a company's credibility, while also improving work processes and efficiency, and it enables a company to better compete with others.\r\nQuality assurance helps a company create products and services that meet the needs, expectations and requirements of customers. It yields high-quality product offerings that build trust and loyalty with customers. The standards and procedures defined by a quality assurance program help prevent product defects before they arise.\r\n<span style=\"font-weight: bold; \">Quality assurance utilizes one of three methods:</span>\r\n<span style=\"font-weight: bold; \">Failure testing, </span>which continually tests a product to determine if it breaks or fails. For physical products that need to withstand stress, this could involve testing the product under heat, pressure or vibration. For software products, failure testing might involve placing the software under high usage or load conditions.\r\n<span style=\"font-weight: bold; \">Statistical process control (SPC),</span> a methodology based on objective data and analysis and developed by Walter Shewhart at Western Electric Company and Bell Telephone Laboratories in the 1920's and 1930's. This methodology uses statistical methods to manage and control the production of products.\r\n<span style=\"font-weight: bold; \">Total quality management (TQM),</span> which applies quantitative methods as the basis for continuous improvement. TQM relies on facts, data and analysis to support product planning and performance reviews.\r\n<span style=\"font-weight: bold; \">Quality assurance in software.</span> Software quality assurance management (SQA) systematically finds patterns and the actions needed to improve development cycles. Finding and fixing coding errors can carry unintended consequences; it is possible to fix one thing, yet break other features and functionality at the same time.\r\nSQA software has become important for developers as a means of avoiding errors before they occur, saving development time and expenses. Even with SQA processes in place, an update to software can break other features and cause defects - commonly known as bugs.\r\n\r\n","materialsDescription":"<h1 class=\"align-center\"> Differences between Software testing and SQA services</h1>\r\n<ul><li><span style=\"font-weight: bold; \">SQA tools</span></li></ul>\r\n- Is about engineering process that ensures quality\r\n- Involve activities related to the implementation of processes, procedures, and standards.\r\n- Process focused \r\n- Preventive technique\r\n- Proactive measure\r\n- The scope of software quality testing tools applied to all products that will be created by the organization\r\n<ul><li><span style=\"font-weight: bold; \">Software Testing</span></li></ul>\r\n- Software Testing is to test a product for problems before the product goes live\r\n- Involves actives concerning verification of product Example - Review Testing\r\n- Product focused\r\n - Corrective technique\r\n- Reactive measure\r\n- The scope of Software Testing applies to a particular product being tested\r\n<h1 class=\"align-center\">Manual QA testing services Vs Automated Quality Assurance Testing</h1>\r\nSoftware testing is a huge domain, but it can be broadly categorized into two areas: manual testing and automated testing. Both of them can be used to achieve the best results, but it is always worth knowing the difference between the two. Each testing type – manual and automated – comes with its own set of advantages and disadvantages. \r\nYou can choose between manual and quality assurance testing services based on a variety of factors. These include:\r\n- Project requirements\r\n- Timeline\r\n- Budget\r\n- Expertise\r\n- Suitability<br /> \r\n<ul><li><span style=\"font-weight: bold; \">Manual Testing </span></li></ul>\r\n<span style=\"font-weight: bold; \">Exploratory Testing:</span> This scenario requires a tester’s expertise, creativity, knowledge, analytical and logical reasoning skills. With poorly written specifications and short execution time, human skills are a must to test in this scenario.\r\n<span style=\"font-weight: bold; \">Ad-Hoc Testing:</span> It is an unplanned method of testing where the biggest difference maker is a tester’s insight that can work without a specific approach.\r\n<span style=\"font-weight: bold; \">Usability Testing:</span> Here you need to check the level of user-friendliness and check the software for convenience. Human observation is a must to make the end user’s experience convenient.\r\n<ul><li><span style=\"font-weight: bold; \">Quality Assurance automation tools</span></li></ul>\r\n<span style=\"font-weight: bold; \">Repeated Execution:</span> When you need to execute a use case repeatedly, automated testing is a better option.\r\n<span style=\"font-weight: bold; \">Regression Testing:</span> Automated automated QA software is better here because the code changes frequently and the regressions can be run in a timely manner\r\n<span style=\"font-weight: bold; \">Performance:</span> You need an automated QA testing software when thousands of concurrent users are simulated at the same time. Additionally, it is a better solution for load testing.\r\n\r\n","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_Quality_assurance.png","alias":"qa-quality-assurance"},"651":{"id":651,"title":"Interface Testing","description":"When an application or a software or a website is developed, then there are several components of it. Those components can be server, database etc. The connection which integrates and facilitates the communication between these components is termed as an <span style=\"font-weight: bold;\">Interface</span>.\r\n<span style=\"font-weight: bold;\">Interface Testing</span> is performed to evaluate whether systems or components pass data and control correctly to one another. It is to verify if all the interactions between these modules are working properly and errors are handled properly.\r\n<span style=\"font-weight: bold; \">Interface Testing - Checklist</span>\r\n<ul><li>Verify that communication between the systems are done correctly</li><li>Verify if all supported hardware/software has been tested</li><li>Verify if all linked documents be supported/opened on all platforms</li><li>Verify the security requirements or encryption while communication happens between systems</li><li>Check if a Solution can handle network failures between Web site and application server</li></ul>\r\n<span style=\"font-weight: bold; \">Phases of Interface Testing. </span>\r\nThere are 2 components involved in Interface testing: 1) web server and application server interface and 2) web server and database server interface.\r\nBasically, 3 phases are involved in the Interface testing which is mentioned below:\r\n<b>Configuration and Development. </b>After the configuration of the interface and the development initialization, the configuration is needed to be verified as per the requirement. In simple words, verification takes place.\r\n<p style=\" text-align: justify; \"><b>Validation. </b>After the configuration and development stage, validation of the interface is necessary.</p>\r\n<p style=\" text-align: justify; \"><b>Maintenance.</b> After the completion of the project, when the project reaches it’s working stage, the interface is set to be monitored for its performance.</p>\r\n<p style=\" text-align: justify; \"></p>\r\n<p style=\"text-align: justify; \"><a name=\"StepsinvolvedinInterfaceTesting\"></a></p>","materialsDescription":"<h1 class=\"align-center\">Types of Interface Testing </h1>\r\nDuring Interface Testing various types of testing done on the interface which may include:\r\n<span style=\"font-weight: bold; \">Workflow:</span> It ensures that the interface engine handles your standard workflows as expected.\r\n<span style=\"font-weight: bold; \">Edge cases -unexpected values:</span> This is considered when testing include date, month and day reversed.\r\n<span style=\"font-weight: bold; \">Performance, load, and network testing:</span> A high-volume interface may require more Load Testing than a low-volume interface, depending on the interface engine and connectivity infrastructure.\r\n<span style=\"font-weight: bold; \">Individual system interface testing:</span> This includes testing each system individually. For example, billing system and inventory management system for the retail store should be able to operate separately.\r\n<h1 class=\"align-center\">What is Graphic User Interface (GUI) Testing?</h1>\r\nGraphic User Interface Testing (GUI) testing is the process of ensuring proper functionality of the graphical user interface (GUI) for a specific application. This involves making sure it behaves in accordance with its requirements and works as expected across the range of supported platforms and devices.\r\n<p class=\"align-center\"><span style=\"font-weight: bold; \">GUI Testing Approaches</span></p>\r\n<p class=\"align-left\"><span style=\"font-weight: bold; \">Manual Based Testing: </span>Under this approach, the screens of the application are checked manually by testers. They are being confirmed with the requirements that are stated in the business requirements. The UI is also matched with the designs that are provided during the documentation phase of the application.</p>\r\n<p class=\"align-left\"><span style=\"font-weight: bold; \">Automation Based Testing:</span> Automated user interface testing approach is performed in 2 steps i.e, record and play. While doing this, the steps are captured/recorded with the help of the automation tool while performing the first round of testing. And during playback, that recorded steps script is run when the application is under test. If the position of any button or image changes that during the playback, it does not get tracked and the test fails.</p>\r\n<h1 class=\"align-center\">What Features Should I Look for in a GUI Testing Tool?</h1>\r\nObviously the first answer is to choose a tool that can automate the specific technologies you’re testing, otherwise your automation is doomed to fail. Secondly you should choose a tool that has some of the following characteristics:\r\n<ul><li>Good interface testing software that makes it easy for your automation engineers to write tests, make changes, find issues and be able to deploy the tests on all the environments you need to test.</li><li>A tool that is well supported by the manufacturer and is keeping up to date with new web browsers, operating systems and technologies that you will need to test in the future. </li><li>An object abstraction layer so that your test analysts can write the tests in the way most natural for them and your automation engineers can create objects that point to physical items in the application that will be robust and not change every time you resort a grid or add data to the system.</li><li>Support for data-driven testing since as we have discussed, one of the big benefits of automation is the ability to run the same test thousands of times with different sets of data.</li></ul>\r\n\r\n","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/icon_Interface_Testing.png","alias":"interface-testing"},"876":{"id":876,"title":"Object Storage","description":"Object storage (also known as object-based storage) is a computer data storage architecture that manages data as objects, as opposed to other storage architectures like file systems which manages data as a file hierarchy, and block storage which manages data as blocks within sectors and tracks. Each object typically includes the data itself, a variable amount of metadata, and a globally unique identifier. Object storage can be implemented at multiple levels, including the device level (object-storage device), the system level, and the interface level. In each case, object storage seeks to enable capabilities not addressed by other storage architectures, like interfaces that can be directly programmable by the application, a namespace that can span multiple instances of physical hardware, and data-management functions like data replication and data distribution at object-level granularity.\r\nObject storage systems allow retention of massive amounts of unstructured data. Object storage is used for purposes such as storing photos on Facebook, songs on Spotify, or files in online collaboration services, such as Dropbox.\r\nObject storage is a method of data storage that emerged in the mid-1990s as researchers foresaw that existing storage methods would eventually start to show their limitations in certain scenarios. True to its name, object storage treats data as discrete units, or objects, that are accompanied by metadata and a universally unique identifier (UUID). This unstructured data resides in a flat (as opposed to tiered) address space called a storage pool. Object storage is also known for its compatibility with cloud computing, due to its unlimited scalability and faster data retrieval.\r\nToday, as data comes to underpin everything we do, the adoption of object storage systems has increased. It’s common in data centers and popular cloud-based platforms, such as Google cloud storage or Amazon cloud storage, and has become the de facto standard in several enterprise use cases.<br /><br />","materialsDescription":"<span style=\"font-weight: bold;\">What is Object Storage?</span>\r\nIn the modern world of cloud computing, object storage is the storage and retrieval of unstructured blobs of data and metadata using an HTTP API. Instead of breaking files down into blocks to store it on disk using a file system, we deal with whole objects stored over the network. These objects could be an image file, logs, HTML files, or any self-contained blob of bytes. They are unstructured because there is no specific schema or format they need to follow.<br />Object storage took off because it greatly simplified the developer experience. Because the API consists of standard HTTP requests, libraries were quickly developed for most programming languages. Saving a blob of data became as easy as an HTTP PUT request to the object store. Retrieving the file and metadata is a normal GET request. Further, most object storage services can also serve the files publicly to your users, removing the need to maintain a web server to host static assets.\r\nOn top of that, object storage services charge only for the storage space you use (some also charge per HTTP request, and for transfer bandwidth). This is a boon for small developers, who can get world-class storage and hosting of assets at costs that scale with use.\r\n<span style=\"font-weight: bold;\">What are the advantages of object storage?</span>\r\n<ul><li>A simple HTTP API, with clients available for all major operating systems and programming languages</li><li>A cost structure that means you only pay for what you use</li><li>Built-in public serving of static assets means one less server for you to run yourself</li><li>Some object stores offer built-in CDN integration, which caches your assets around the globe to make downloads and page loads faster for your users</li><li>Optional versioning means you can retrieve old versions of objects to recover from accidental overwrites of data</li><li>Object storage services can easily scale from modest needs to really intense use-cases without the developer having to launch more resources or rearchitect to handle the load</li><li>Using an object storage service means you don’t have to maintain hard drives and RAID arrays, as that’s handled by the service provider</li><li>Being able to store chunks of metadata alongside your data blob can further simplify your application architecture</li></ul>\r\n<span style=\"font-weight: bold;\">What are the disadvantages of object storage?</span>\r\n<ul><li>You can’t use object storage services to back a traditional database, due to the high latency of such services</li><li>Object storage doesn’t allow you to alter just a piece of a data blob, you must read and write an entire object at once. This has some performance implications. For instance, on a file system, you can easily append a single line to the end of a log file. On an object storage system, you’d need to retrieve the object, add the new line, and write the entire object back. This makes object storage less ideal for data that changes very frequently</li><li>Operating systems can’t easily mount an object store like a normal disk. There are some clients and adapters to help with this, but in general, using and browsing an object store is not as simple as flipping through directories in a file browser</li></ul>","iconURL":"https://old.roi4cio.com/fileadmin/user_upload/jhghj.png","alias":"object-storage"}},"companyUrl":"wilsontechpro.com","countryCodes":["USA"],"certifications":[],"isSeller":true,"isSupplier":true,"isVendor":true,"presenterCodeLng":"","seo":{"title":"Wilson Tech Pro Inc","keywords":"","description":"TEch","og:title":"Wilson Tech Pro Inc","og:description":"TEch","og:image":"https://old.roi4cio.com/uploads/roi/company/OIP_1.png"},"eventUrl":"","vendorPartners":[],"supplierPartners":[],"vendoredProducts":[],"suppliedProducts":[],"partnershipProgramme":null}},"aliases":{},"links":{},"meta":{},"loading":false,"error":null},"implementations":{"implementationsByAlias":{},"aliases":{},"links":{},"meta":{},"loading":false,"error":null},"agreements":{"agreementById":{},"ids":{},"links":{},"meta":{},"loading":false,"error":null},"comparison":{"loading":false,"error":false,"templatesById":{},"comparisonByTemplateId":{},"products":[],"selectedTemplateId":null},"presentation":{"type":null,"company":{},"products":[],"partners":[],"formData":{},"dataLoading":false,"dataError":false,"loading":false,"error":false},"catalogsGlobal":{"subMenuItemTitle":""}}