观察了许多初创公司技术方案的选择,我总结基本遵循8个字:快速灵活,物美价廉。我们也应该根据自身实际情况,跳出束缚与时俱进,选择智能互联网时代最有力的技术和工具。

基础编程语言

候选者:C#/C++/Python

C#相比Java语法更先进,生产力在各种语言中名列前茅。Java虽然在大型架构中有人才和框架的优势,但对初创公司来说还很遥远。由于.NET平台开放时间太短,目前框架特别是人工智能框架太少。

C++在高性能开发中仍然不可或缺,尤其在人工智能方面,但我们目前还以运用开源的AI框架为主,暂不深入框架开发。但将来可能要在C++或新锐Rust中投入。

Python是动态语言的代表,号称编程语言的瑞士军刀,在动态语言中的普及度,框架的完整性都无可匹敌,开发效率也很高,大部分AI框架都有Python的支持。

选择:Python

操作系统

既然选择Python语言,开发环境的操作系统就并不重要。而关于我们的软件运行环境,应该是Linux,相比Windows有更低的系统资源消耗,更好的安全性。我个人接触Ubuntu较多,其实CentOS差别不大。

选择:Ubuntu

数据库

候选 MongoDB/MySQL/PostreSQL

个人觉得选择比较容易,PostreSQL是传统的关系数据库,但又支持NoSQL,性能也不错(PostgreSQL的NoSQL特性表现抢眼),而且还开源。在集群方面,PostreSQL也日益强大,相信未来不会成为大的瓶颈。

选择:PostreSQL

开源框架

选择dlib + face_recognition,均有Python支持。

前端技术

创业尽量保持专注,只做B/S不做C/S,只做小程序不做APP。基本组合肯定是 Html5 + ECMAScript6 + CSS3。由于可能涉及图像或视频交互,WebSocket大有用武之地。

MVVM框架

候选:AngularJS/React/Vue

我在实际开发中用AngularJS和Vue各做了一两个项目,感觉Vue比AngularJS要清晰简洁,容易上手。React把视图看作状态机的思想我自己是非常欣赏,如果一直是我一人开发的话,也很乐意采用React,但对多数人来说,可能要经过一番磨砺才能写出符合其思想的代码。

选择:Vue

UI框架

Vue下我接触的UI框架只有ElementUI,用了近一年,感觉坑比较少,可以继续押宝。

AI创业的技术方案选择的更多相关文章

  1. Redis高可用详解:持久化技术及方案选择

    文章摘自:https://www.cnblogs.com/kismetv/p/9137897.html 前言 在上一篇文章中,介绍了Redis的内存模型,从这篇文章开始,将依次介绍Redis高可用相关 ...

  2. Redis高可用详解:持久化技术及方案选择 (推荐)--转载自编程迷思博客www.cnblogs.com/kismetv/p/8654978.html

    一.Redis高可用概述 在介绍Redis高可用之前,先说明一下在Redis的语境中高可用的含义. 我们知道,在web服务器中,高可用是指服务器可以正常访问的时间,衡量的标准是在多长时间内可以提供正常 ...

  3. 四种 AI 技术方案,教你拥有自己的 Avatar 形象

    大火的 Avatar到底是什么 ? 随着元宇宙概念的大火,Avatar 这个词也开始越来越多出现在人们的视野.2009 年,一部由詹姆斯・卡梅隆执导 3D 科幻大片<阿凡达>让很多人认识了 ...

  4. 全面解密QQ红包技术方案:架构、技术实现、移动端优化、创新玩法等

    本文来自腾讯QQ技术团队工程师许灵锋.周海发的技术分享. 一.引言 自 2015 年春节以来,QQ 春节红包经历了企业红包(2015 年).刷一刷红包(2016 年)和 AR 红包(2017 年)几个 ...

  5. 分布式锁1 Java常用技术方案

    前言:       由于在平时的工作中,线上服务器是分布式多台部署的,经常会面临解决分布式场景下数据一致性的问题,那么就要利用分布式锁来解决这些问题.所以自己结合实际工作中的一些经验和网上看到的一些资 ...

  6. C蛮的全栈之路-序章 技术栈选择与全栈工程师

    目录 C蛮的全栈之路-序章 技术栈选择与全栈工程师C蛮的全栈之路-node篇(一) 环境布置C蛮的全栈之路-node篇(二) 实战一:自动发博客 博主背景 985院校毕业,至今十年C++开发工作经验, ...

  7. 分布式锁1 Java常用技术方案(转)

    转:http://www.cnblogs.com/PurpleDream/p/5559352.html#3450419 前言:       由于在平时的工作中,线上服务器是分布式多台部署的,经常会面临 ...

  8. 技术方案:在外部网址调试本地js(基于fiddler)

    1 解决的问题 1)        场景1:生产环境报错 对前台开发来说,业务逻辑都在js中,所以报错90%以上都是js问题. 如果生产环境出现报错,但是测试环境正常.这时修改了代码没有环境验证效果, ...

  9. MySQL数据库读写分离、读负载均衡方案选择

    MySQL数据库读写分离.读负载均衡方案选择 一.MySQL Cluster外键所关联的记录在别的分片节点中性能很差对需要进行分片的表需要修改引擎Innodb为NDB因此MySQL Cluster不适 ...

随机推荐

  1. 错误 在类中找不到main方法请将main方法定义为 public static void main String args否则JavaFX应用程序类必须扩展javafx-ap

    最近在使用eclipse编写java程序时遇到这样一个问题: 错误在类中找不到main方法,请将main方法定义为 public static void main(String[] args)否则 J ...

  2. Python语言说明

    第一章:Python入门一.语言什么是语言:人与人之间的沟通计算机语言:计算机语言,即人和计算机之间的沟通语言. 按照级别分类:机器语言:最底层,最低级的语言,只能识别0/1,电平信号汇编语言:计算机 ...

  3. pyspider 启动错误

    [root@localhost python]# pyspider all [W 180629 07:08:26 run:413] phantomjs not found, continue runn ...

  4. react那些事儿

    一.参考链接https://reactjs.org/http://react-china.org/https://doc.react-china.org/https://hulufei.gitbook ...

  5. Redis初步整理

    1,Redis 简介 Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库. Redis 与其他 key - value 缓存产品有以下三个特点: Redis支持数据的 ...

  6. mybatis查询到count(*)返回值

    resultType="int" <select id="num_List_" parameterType=" xxx" result ...

  7. h5本地缓存(localStorage,sessionStorage)

    H5本地存储数据 localStorage,sessionStorage的区别: 相同点:  缓存数据比cookie的范围大; localStorage:关闭浏览器数据不会消失,除非手动删除数据 se ...

  8. ajax请求json中的数据

    在这里不多说,直接可以运行代码看效果: 代码: <!DOCTYPE html> <html lang="en"> <head> <meta ...

  9. Spring使用原生JDBC

    Spring使用原生JDBC 为加深对Spring解耦的理解,本次实验学习用Spring连接JDBC 一.POM配置文件 pom.xml <project xmlns="http:// ...

  10. Spring IOC基础使用

    先下载.导入核心jar包 编写Book类和CollectionUse类 package MyPackageOne; public class Book { private String title; ...