当你认准一件事的价值,长期投入;随着时间积累就会慢慢地产生质变。这些年,我就是这样做的——持续在设计与技术交叉领域投入精力。

—— Shadow, 上海

我获得了:能自由地、按照内心的想法,创作软件产品的能力。代码能力对于我来说,和设计一样,都是为了创造出好产品的一种手段而已。

如果你也想自由创作

请继续阅读

1  跨越职业的鸿沟

不知大家在平时工作中会不会有这样的感觉:作为设计师,与开发打交道,难免觉得 ” 巧妇难为无米之炊 “ ;而作为程序员,当自己开发了某个工具之后,为了追求更好的体验,却苦于不能「设计」,很难发挥更多。

以下是设计与技术相互融合的案例 STATMUSE

STATMUSE在技术上组合了

“数据可视化+聊天机器人+语音技术”

产品上,通过AI 扮演篮球解说员,为用户讲解各个球星历年的表现;体验上,AI 聊天机器人更像是一个搜索引擎的升级版,这种减轻聊天界面的设计,非常契合产品的调性。

技术与设计的融合催生了新的体验。设计师认真思考了技术的优势及特性,利用设计手段把技术融入产品体验中

再看一个设计工具的例子 Framer

这些年,我们在工作中使用的工具一直在演进:从Sketch 、 Pixate,再到 Framer。

Framer 就是一款结合代码与可视化实现的交互设计工具。通过代码,可以完全控制交互效果,设计师不仅停留在画图的层面,更多的可以关注到实现的真实效果。设计工具在进化中影响了使用者融合技术与设计

 Infinite Learner 

无尽学习者

如今,技术的迭代速度非常快。比如 web 网页的 css 布局方式,就历经了 float 、 flex 、 grid 的进化;移动端 APP 的混合开发也经历了由 IONIC 、 REACT NATIVE 的变迁;机器学习也越来越普及,相关的深度学习、强化学习、迁移学习等,也越来越大众。

技术的变迁,也为用户带来了新体验。具体表现为交互方式的革新、新的设计方法产生。例如,语音识别技术的成熟,对话聊天技术应用的场景越来越多,从可视化的 UI 界面,过渡到了语音的控制。还有文本转语音技术的成熟,使得用户不想看文字的时候,可以选择倾听。

AI产品podcastle.ai

人工智能渗透到各行各业,人与机器如何协同创新,产生了人机协同设计的新理念,比如在香水瓶的设计上,通过简单设定一些条件,机器生成大量的参考,然后设计师再进一步深入设计:

协同创新框架

你认为,人机关系变化是由

设计,还是技术带来的?

宁静技术Calm Technology,倡导技术无缝地融入人类的生活,而不是让人类时时感到技术的存在。通俗点来讲,我们不会消失在电脑空间中,而是电脑将消失在我们的生活。

通过智能手环,界面融入到我们生活当中。我们需要做的可能只是晃动一个手势,几句语音应答而已。

保持好奇心,以开放的心态,持续学习。我自己每天都会在《MIX+人工智能》更新人工智能交叉学科的习得。

516人正在学习AI+泛设计

扫码加入

3  计算机思维是什么?

是写代码吗?

雷军在小米之前,做了10年程序员。京东刘强东在一次讲座上,称自己大三(1995年)的时候,给别人写代码,一个晚上就能赚5万……

但是,写代码是困难的吗?Mixlab群里一位朋友,学习Python,在坚持了2个月左右,最终放弃了。他觉得代码要学习的知识太庞大了,不知如何入手,一旦有新问题解决不了学习进度就卡在那里,从而越学越觉得难。

我认为,代码最难的是逻辑,尤其是复杂的逻辑

引用一位Oracle程序员在Hacker News上吐槽自己工作的讨论:“Oracle经历长期的产品线迭代,代码异常庞大、逻辑复杂。每新增一个特性或者修复BUG,就需要大量的调试,每天都小心谨慎的进行着日常的工作”。Oracle每次的版本发布都经历数百万次的测试,工作量可想而知。

那么,问题来了

学代码应该学什么 

试试回答以下问题,来掌握程序运行的逻辑:

01   如何通过指令给计算机安排任务?

02   计算机如何按我们设定的条件执行任务?

03   计算机是如何执行重复执行任务的?

04   计算机完成任务的时候如何反馈给我们?

学代码有方法吗? 一般来说,初学者有2类:零基础,指的是系统了解过编程语言的;入门级,会一门编程语言,会写一点点代码,但无法自己完成一个项目从0到1构建的。

我的学习心得

如下:

01 最小项目实践+系统地刻意练习 

如果是零基础,建议先学一门语言,一步步来,适当增加实践项目的练习,比如DIY一个以图搜图引擎等类似的项目。当你学完这一阶段的入门,不再是0基础之后,就可以尝试了解各种语言的环境安装、最小可运行代码集,以及各种开发工具,尝试各种好玩、复杂的项目了。

02 最小可运行的代码集

主要通过看示例,包括作者提供的示例代码,网上文章提供的示例代码等;

举一个的以图搜图代码示例  turicreat

03 理解功能

理解代码里的每一句的含义,真实的行为,就跟读书一样,知道作者的核思想是什么;比如下面这3句:

第1句 是初始化一个类,

该类可以提取图片的特征向量;

第2句 是通过文件路径打开图片;

第3句 是从图片提取特征向量。

04 关注输入、输出的数据结构

输入是字符串,还是一个列表,还是一个字典?输出的是什么也非常重要。比如输出的时候,有None的可能,那下一段代码对此输出结果引用的时候,就要注意啦。 如果输入_idea为"",输出为None,这个时候写代码的时候就要留意输入跟输出的各种可能。      

05 即搜即用

当你掌握以上技巧的时候,就会发现没必要从头到尾全部一口气把代码全部学完,需要的时候再快速翻阅文档,通过示例、输入输出、理解功能这三个点,就可以现学现用啦。配合搜索引擎,我们几乎可以解决任何编程问题。

06 优雅的代码

对于初学者来说,需要关注如何书写优雅的代码,主要表现在:

代码所在位置恰当;

有适当的注释;

适当的缩进和空行;

以及没有重复代码……

这里面的内功修养,离不开设计模式(插入文章链接)和代码重构,还要有非常多的实践与刻意练习。写代码是基本功,锻炼的是逻辑思维能力,跟解决问题的能力。在不久的未来,写代码也是可以机器完成的。pix2code 等论文就提出了一个强大的前端代码生成模型,解释了如何利用 LSTM 与 CNN 将设计原型转化为 HTML 和 CSS 网站。

 不变的是什么?

学代码,应该更多地关注底层逻辑思维能力。

我自己本身就是一名跨界设计师。(点击阅读)

从事过景观设计、旅游规划、地产设计管理、参数化设计、用户体验设计、数据可视化、互联网产品设计。

每一类设计其实都有不一样的知识,新接触的设计,我一般会了解相关的设计方法,设计的元素具有什么样的特性,经典的案例有哪些,再结合经验上的积累,来进行设计。

我认为其中不变的是

 “设计思维”

以下有三种设计思维的模型:

简单的四步模型

探索、生成、评估、交流(1989)

双钻石模型

发现、定义、开发、交付(2006)

设计思维模型

移情、定义和可视化、构思与合作、

原型、测试(2016)

如何把设计思维方法论

转化为自己的能力呢 

01 掌握完整的设计过程

一个完整的设计过程应该包含:前期调研、分析问题、概念方案、深化方案、实施。不同的设计类别所涉及的过程相差不大,但作为设计师,应该全链路都有所积累,需要成为“全链路设计师”。

02 刻意练习:设计思维

我一直坚信设计思维是相通的,核心无非是创造更好的用户体验,平衡美与实用功能的关系。说来简单,实际做起来非常难。需要我们不断实践,不断思考,积累经验才能形成很好的设计思维。

1万小时的

练习是适用的

从使用者的角度看问题,真实体验生活;

找出问题的根源,确定需求;

搜集背景资料,认真分析;

用最简单、粗暴的方式解决问题;

融入美学的方式,更优雅地解决问题;

总而言之,重点是培养用户思维。设计是为用户服务的,不管做什么样的设计,与用户站在同一立场是非常重要的。

03 基本功:设计技术

设计工具,就像我们常说的“技与艺”的关系。设计思维是“艺”,决定了设计的水平;设计工具是“技”,辅助设计师更好的表达想法,实现。

“技”,包括手绘、手工艺、CG手段,动画、编程、3D打印、各种设计工具等。人工智能是一种工具,而且会是一种比较炫酷的“技”。

新一代图像编辑器 facet.ai

04 拥抱变化,总结归纳

作为一名设计师,跨界是必须的。而如何快速学习,要求有较高的自学能力,同时随着各种知识的积累,还需要良好的总结归纳能力,不断整理自己的知识体系,才能加深对知识的掌握,形成个人方法论。

跨界创新

我一直在思考怎样才可以为无尽学习者们Infinite Learner ,提供更好的服务?也许是这样一个可以交流的社区:跨界,开放,共享,学习。

欢迎加入

作者:Shadow

主编:CHUN FANG

增长黑客:Chauncy Guo

添加小编加入我们的跨界大本营


欢迎一起来探索未知世界

更多资料请查阅:Mix+人工智能专刊

  516人已加入  限时优惠  ????

每期由mixlab社区精选、收录人工智能的相关内容。包括AI产品、AI技术、AI场景、AI投资事件、AI的思维方式等。MIX的主题包括:AR、VR、计算设计、计算广告、智能设计、智能写作、虚拟偶像等。

付费加入星球后,即可免费加入科技前沿外刊群:《新科学家杂志》、《英国金融时报》、《华尔街日报》、《经济学人》、《纽约时报》、《泰晤士报》等当日最新外刊。

转发求支持!

无尽学习者修炼指南 v3.0相关推荐

  1. 微软出品 Kubernetes 最新学习指南 v3.0

    概述 Kubernetes 正在席卷应用开发世界,这是一个不争的事实.预计到 2022 年,全球有超过 75% 的组织将在生产环境中运行容器化应用程序. Kubernetes 正在塑造应用程序开发和管 ...

  2. matlab norm函数_MATLAB | TAM 211 存活指南 V3.0

    点击蓝字 关注我 本文大部分内容为2019年初次接触 TAM 211时所写,后续存在少量修改与增补.叙述时间可能有点错乱,凑合着看吧. 新的学期,我们迎来了 TAM 211 , 静力学的课程.虽说这是 ...

  3. 下载!微软出品的最新 Kubernetes 学习指南 3.0

    点击上方"逆锋起笔",关注领取视频教程 ☞ 程序员进阶必备资源免费送「各种技术!」 ☜ Kubernetes 正在席卷应用开发世界,正在塑造应用程序开发和管理的未来,这是一个不争的 ...

  4. Kotlin修炼指南(三)——奇技淫巧

    Kotlin作为Android开发的首选语言,为开发者提供了大量的语法糖和技巧,让开发者可以专注于需求开发,而将语言所带来的影响减少到最少.Java和Kotlin最大的区别,实际上在于Kotlin的函 ...

  5. ABP框架 v3.0 已发布!

    我们很高兴地宣布,ABP框架和ABP商业版3.0版已经发布.与常规的2周发布一个版本不同的是, 这个版本用了4周的时间.关闭了119个issue,合并了89个pull request 和主框架仓库中的 ...

  6. Android 百度地图 SDK v3.0.0 (一)

    转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/37729091 最近公司要把百度地图集成的项目中,于是我就研究了一天百度地图的SD ...

  7. .NET Micro Framework开发板用户简明手册(v3.0)

    说明:前段时间已经先后发布了<.Net Micro Framework开发板用户简明手册>和< .NET Micro Framework开发板用户简明手册(v2.0)>,分别对 ...

  8. 树莓派机器人小车(创乐博)修炼指南(一)

    树莓派小车修炼指南(一) 主要是小车前期的准备工作 一.拼装小车 详见安装视频 踩坑指南: 可以将所有其他零件安装完毕后再安装轮子(先安装轮子不方便安装电池和电机) 注意第一层金属板的正反亚克力板安装 ...

  9. 《Java修炼指南:高频源码解析》阅读笔记一Java数据结构的实现集合类

    一.Arrays工具类 来自java.util.Arrays,用来处理数组的各种方法. 1.1 List asList(T- a) 用来返回由自定数组支持的固定大小列表,虽然这里返回了一个List,但 ...

最新文章

  1. Furein平台-比特币现金晋级毕竟在吵什么
  2. 《C#高级编程》 读书心得1--核心C# 几点你可能没注意,但很基础的小东西。
  3. visio数据流线文字方向的问题
  4. 腾讯发现Google Home首个无接触攻破漏洞
  5. 如何在CRM WebClient UI里打开外部链接
  6. 工业交换机的价格为什么有高低之分?
  7. 新扬天电脑所配USB键盘功能键驱动问题注意事项
  8. php中函数的类型提示和文件读取功能
  9. java robot api_用java Robot API 模拟实现类似按键精灵功能
  10. gf(2 4)有限域的乘法c语言实现,有限域GF(2^n)的C语言实现浅析
  11. javaWeb连接数据库实现简单的登陆注册功能
  12. 计算机公式里qf是什么,计算公式
  13. mysql异常-SQLSTATE[HY000]: General error: 1436 Thread stack overrun
  14. flashfxp 命令行
  15. seek()方法的使用
  16. 细水长流+润物无声——2021企业营销数字化转型研究报告
  17. 链表的头插法和尾插法——头插尾插交替插入
  18. 多条Precision-Recall(PR)曲线绘制(PR曲线)含python代码
  19. uniapp微信小程序实现连接低功耗蓝牙打印功能
  20. 申请软件著作权的流程有哪些?让专业人士带你了解

热门文章

  1. Dython 容联云的一个测试短信验证码
  2. java excel 边框颜色_poi生成excel整理(设置边框/字体/颜色/加粗/居中/)
  3. android canvas画图gc,自定义控件绘图(Canvas,Paint,Region等)篇一
  4. Ubuntu系统出现kernel panic
  5. 在线PDF编辑网站http://www.pdfescape.com
  6. Testin云测平台操作步骤
  7. 教你简单学会用Python画长草颜团子
  8. 分享一个自己做的一个3DM手机客户端
  9. 【整理】Python中的re.search和re.findall之间的区别和联系 + re.finall中带命名的组,不带命名的组,非捕获的组,没有分组四种类型之间的区别
  10. openwrt查看linux内核,OpenWrt教程-如何升级linux内核版本