当你认准一件事的价值,长期投入;随着时间积累就会慢慢地产生质变。这些年,我就是这样做的——持续在设计与技术交叉领域投入精力。
—— Shadow, 上海
我获得了:能自由地、按照内心的想法,创作软件产品的能力。代码能力对于我来说,和设计一样,都是为了创造出好产品的一种手段而已。
如果你也想自由创作
请继续阅读
1 跨越职业的鸿沟
不知大家在平时工作中会不会有这样的感觉:作为设计师,与开发打交道,难免觉得 ” 巧妇难为无米之炊 “ ;而作为程序员,当自己开发了某个工具之后,为了追求更好的体验,却苦于不能「设计」,很难发挥更多。
以下是设计与技术相互融合的案例 STATMUSE
STATMUSE在技术上组合了
“数据可视化+聊天机器人+语音技术”
产品上,通过AI 扮演篮球解说员,为用户讲解各个球星历年的表现;体验上,AI 聊天机器人更像是一个搜索引擎的升级版,这种减轻聊天界面的设计,非常契合产品的调性。
技术与设计的融合催生了新的体验。设计师认真思考了技术的优势及特性,利用设计手段把技术融入产品体验中。
再看一个设计工具的例子 Framer
这些年,我们在工作中使用的工具一直在演进:从Sketch 、 Pixate,再到 Framer。
Framer 就是一款结合代码与可视化实现的交互设计工具。通过代码,可以完全控制交互效果,设计师不仅停留在画图的层面,更多的可以关注到实现的真实效果。设计工具在进化中影响了使用者融合技术与设计。
2 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 网站。
4 不变的是什么?
学代码,应该更多地关注底层逻辑思维能力。
我自己本身就是一名跨界设计师。(点击阅读)
从事过景观设计、旅游规划、地产设计管理、参数化设计、用户体验设计、数据可视化、互联网产品设计。
每一类设计其实都有不一样的知识,新接触的设计,我一般会了解相关的设计方法,设计的元素具有什么样的特性,经典的案例有哪些,再结合经验上的积累,来进行设计。
我认为其中不变的是
“设计思维”
以下有三种设计思维的模型:
简单的四步模型
探索、生成、评估、交流(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、计算设计、计算广告、智能设计、智能写作、虚拟偶像等。
付费加入星球后,即可免费加入科技前沿外刊群:《新科学家杂志》、《英国金融时报》、《华尔街日报》、《经济学人》、《纽约时报》、《泰晤士报》等当日最新外刊。
转发求支持!