2012移动开发者大会小结

Y的十年职业生涯小结(2012-2022) Y的十年职业生涯小结(2012-2022) 2012毕业至今,刚好十年。 1. 移动互联网浪潮 当时的我并不知道,这十年,移动互联网的十年,是这么一段波澜壮阔,荡气回肠的历史。 很少人能想到,iPhone和Android的横空出世,能掀起这么巨大的移动互联网浪潮,能给人们生活方式和习惯带来如此翻天覆地的变化。 2007年第一代iPhone发布。 2008年,中国的互联网人口第一次超过了美国。这年10月,第一部Android手机发布。 2009年夏天,魅族的第一款手机正式发布。 同时,这款被称为“山寨iPho 阅读详情

产业角度:

 小马哥说移动互联网不应背负太多pc端的历史包袱,做出一些pc端没有的而移动端特有的东西,不管是游戏,电子商务,还是社交。

1.移动支付,移动O2O,移动搜索成为移动互联网的热点。腾讯投入10亿安全创新基金,其手机管家牵手10多家电子市场成立官方正版“安全联盟”,同时进一步加大对微信的推进力度;阿里巴巴集团投资2亿美元将云OS业务独立运行,持续发力手机操作系统及无线领域;百度地图部门近期拆分为LBS事业部,负责百度地图PC端和移动互联网端的技术研发、产品升级、商业拓展等相关业务。

2. 移动游戏,尤其是网络游戏,是最能货币化,甚至可以说是唯一被证明的领域。一切不以盈利为目的的游戏都是耍流氓。现在有好几款移动端游戏的月收入过500万,有些还突破千万,更有甚至,有人爆料在腾讯平台上有一款游戏一天还收入200万,简直与pc端的网页游戏有得一比。不过这只是开始,移动端的游戏还是和pc端的有很大不同,例如时间零碎化,如果把网络游戏看成正餐,网页游戏看成是快餐,那么移动游戏就是零食了。不过个人认为,目前的移动网游ARPU即单个用户消费额远比pc的低,支付的技术需要跟进,这样移动游戏才能健康发展。百度目前已有页游的平台,可以在此基础上造一个针对移动游戏的平台。 

3.android仍然是大头(8990万台),苹果次之(3510万台),安卓和苹果共占82%的智能机市场份额。安卓是个开放的市场,而苹果则有一个完善成熟的产业链。

4.要做游戏就做网络游戏,不要做单机的。愤怒的小鸟愤怒了几个月就不愤了,切水果现在还切?不切了。中国人和外国人和全世界的人比创意,比不过。而且购买游戏的人很少,两块钱买一瓶可乐觉得很正常,而两块钱买一款游戏就很傻,这是中国人的消费观。在应用内付费,收取道具的增值业务会更赚钱。

 5.移动互联网应用需要的特点:简单、有用、好玩、畅快。“我们对社交的领悟是下面四句话,我们认为一个好的社交产品应该能够直指人心,让人感到温暖和需要。第二是针对一群人,让他们能够沉迷和宽热,不要只是针对你认为他们有需求,而是一批可以描述出来的人。我们希望产品是有持续性的。最后,我们希望用户行为很重要。如果行为完了就走了是不行的,行为要可以沉淀为内容,才可以给社交领域带来可持续化的优势。”上面引用的是李开复的原话,总结的这几点觉得挺到位的,接下来咱们的移动产品(阿拉丁、iPad app、webapp等的产品设计的形式,希望有可以参考的价值)。

 

技术角度:

 1、不能简单、完全的照搬PC的产品体验到移动端的产品体验上来。

     马化腾提出的这个观点,从早期的QQ和QZone体验模式简单的把pc的方式移植到移动端,导致早期的体验非常的差,还有Facebook在移动端放弃HTML5的方式也是一个例子,既然做移动产品,那么就得根据移动设备、网络等的特点来做,从移动端作为出发点去设计产品和用户体验,而不能从PC端简单的移植。这个观点虽然是说在产品和用户体验方式,在代码开发上,也是最近iPad webapp所面临的很多问题,都是由于过多的从PC搬过来太多代码在移动浏览器上跑,问题就逐渐被报出来:

a、点击统计:

近期UBS的同学报出iPad的点击日志字段url中带有莫名其妙的前缀(newtab:),之后又报出url字段有莫名奇妙的协议名(http://internal/...),这些看似是莫名其妙,但是追看点击统计代码,还是原来PC的方式,在a标签上声明onmousedown事件,那么问题就出在onmousedown里,它的执行时间跟click类似,会发生延迟,那么在点击了之后,iOS第三方的浏览器会把链接给修改了(上面莫名其妙的协议等),onmousedown获得得href属性是在被浏览器修改之后的,所以问题就出现了。 既然移动浏览器已经支持了touch等事件,这些都是移动浏览器独有的,那么就应该从移动浏览器所支持的独有的特性去处理移动端的功能,使用touchend等事件去代替onmousedown

b、键盘

移动设备(智能手机、平板电脑等)都已经有了虚拟的输入键盘,这个虚拟键盘跟PC的键盘是有些类似的不同,特别是Android上,屡屡报出keydown,keyup等键盘的事件不会触发的问题;还有弹出虚拟键盘的时候,对页面的影响也是各不相同的,在处理样式上可能就有别与PC。

c、兼容性问题(历史代码的包袱)

    移动浏览器基本被Webkit占领(虽然windows 8的平板又来了),移动端解决的兼容性问题,是各种Webkit浏览器的渲染差异,摒弃原始PC上的一些浏览器兼容代码吧,别留下过多的历史代码成为包袱;iPad webapp刚刚已经清理过一次历史代码,但是仍然有一些需要不断的去整理和重构。

    上面在iPad webapp上出现的问题大部分是由于从PC那边适配模版的时候直接挪用了PC的代码,但是有些代码在移动浏览器却会有不同的表现,导致功能和效果上存在差异。因此对于事件上的处理,优先考虑touch、gusture等事件代替PC的键盘、鼠标事件等在代码兼容性方面(CSS、JavaScript),从webkit出发,兼容各种iOS和Android平板,还有接下来将要有的Microsoft Windows 8平板。

 

2、NodeJS

大会中偶然有讲师提到了NodeJS这个东西,姑且不说它的性能和开发效率,从另外一个方面来说,它使得前端开发人员能涉猎的范围更广了,一个产品的开发人员角色也发生了变化:原先的需要前端、服务端等多种角色才能去完成一个产品的开发,但是,NodeJS的使用,可以简简单单的由前端开发人员的角色就可以很快的完成,而且在前端多人协作和开发方面,都能比较好的掌控,开发更简单。

3、Webkit的应用

Webkit内核的应用越来越广泛,已经被纳入桌面端的软件开发中,在豌豆荚2.0重构中,在软件前端,使用了Webkit作为页面展示层,然后通过异步Api,跟底层的接口对接,接受异步请求,然后根据不同的协议返回不同的数据和处理逻辑。其实从酷我等音乐盒的软件产品中也可以看到Webkit的大量应用,Webkit的加入,使得软件在架构上更加清晰、更易维护和扩展,这从两外一个方面也表示,前端开发人员也可以加入到这样的桌面软件开发行列里。

4、flash air是不错的移动端的技术解决方案。从pc端的as代码通过air的简单转换编译就可以发布成移动端应用。成本低,成功的例子,《被错过的天堂》。adobe收购phonegap,放弃移动版flash player,转而投入精力到flash air。在游戏方面,无论是pc还是移动端,flash还是很有前途和优势的。

5、cocos2d-x跨平台游戏引擎,可以用C++编写游戏,能跨平台发布到安卓和iphone上。降低跨平台成本。作者是中国人王哲。

如果要编写html5游戏,可以用cocos2d-html5。appstore上top20的游戏里就有9-10款是用这个引擎写的。

Ubuntu升级遇到grub-efi-amd64-signed报错?3步搞定这个烦人的EFI目录问题 本文详细解析了Ubuntu系统升级时遇到的“grub-efi-amd64-signed”报错及“cannot find EFI directory”问题。通过剖析UEFI启动机制与EFI系统分区原理,提供了从诊断到修复的三步解决方案,帮助用户快速解决因EFI目录未挂载导致的升级中断,确保系统引导正常。 阅读详情

相关推荐

跟着团子学SAP EPPM:项目管理常见的集成场景(PPM\PS\MS Project)

在SAP的EPPM解决方案中,针对企业战略级别的投资组合管理首先是定义合适的投资组合的层级结构,在投资组合下可以通过不同维度去定义投资篮(Portofolio Bucket)进行层层拆分,在最下层级的投资篮下可以分配明细的投资项(Portofolio Item),投资项可以是独立的一个一个具体执行的项目,也可以是单纯的一次服务等等。 今天主要聚焦在投资项的维度展开讲一下在SAP中投资项常见的几种集成模式: 集成场景1:使用PPM中的Project Management进行项目管理 第一个场景是在创建投资项

Lucas1211的博客 4139

小结:Windows Server 2012文档

文档:Windows Server 2012 Hyper-V配置扩展交换机文档:Windows Server 2012 配置Hyper-V复制文档:非群集、非共享存储的实时迁移文档:基于SMB共享文件夹的实时迁移文档:Windows Server 2012 虚拟光纤通道文档:iSCSI 目标和发启连接文档:Windows Server 2012 增删图形界面文档:Window...

weixin_33827731的博客 134

vllm运行过程中出现cuda out of memory

将长序列分解为多个小块,每个块分别处理。这样可以减少单次 Prefill 的计算量和显存占用,从而优化 TTFT 和显存使用效率。考虑使用 CPU 卸载(如 --cpu-offload-gb),将部分缓存卸载到 CPU 内存中,扩展 GPU 的虚拟内存。在大语言模型中,当输入序列很长(例如超过 1024 个 Token)时,Prefill 阶段的计算量会非常大。最后增加了enable-chunked-prefill参数和max_num_batched_tokens解决了问题。参数来进一步优化性能。

盛世芳华 3516

[笔记]2012年移动大趋势(上)

最近VisionMobile发布了Mobile Megatrends 2012报告,就九个方面分析移动领域的趋势发展,现笔记如下。 一、手机OEM的金字塔状况 在2010年,报告称Symbian已将智能手机桂冠让给Android。那时,Symbian和Android的差距只有2%。在2011年差距拉大,Android称在智能手机市场有半数是Android,而Symbian的份额已降至个位数。A

愷风(Wei)的专栏 3317

DVWA全级别详细通关教程

dvwa全级别详细通关教程,暴力破解,命令注入,CSRF跨站请求伪造,文件包含,文件上传​,SQL注入,XSS

m0_62063669的博客 1万+

用VINS-Fusion跑通EuRoC数据集:Ubuntu22.04+ROS2环境下的保姆级评测指南

本文详细介绍了在Ubuntu22.04和ROS2 Humble环境下使用VINS-Fusion处理EuRoC数据集的完整流程。从环境配置、数据集转换到参数调优和性能评估,提供了一套全面的多传感器融合分析方案,帮助开发者在无人机精准定位场景中实现高效部署与优化。

weixin_29212867的博客 517

我的2012小结:不忘初心,方得始终

Jason Lee http://blog.youkuaiyun.com/jasonblog http://weibo.com/jasonmblog 【一】前篇 2012年12月13日,一个特别的日子 —— 除了是国难日,两年前的今天,我刚来到杭州实习。 由于今年的经历有很多不方便对外细说的地方,所以本来不想写年终总结的。但今晚走在杭州冬夜的街头,觉得每年都应该给自己一个交待,一个回

JasonLee的专栏 1万+

【基金量化研究系列】基金绩效归因模型——Brinson多期归因模型

文章目录1. 引言2. Brinson单期归因模型2.1 模型框架2.2 公式推导3. Brinson多期归因模型3.1 模型框架3.2 公式推导4. Brinson模型的应用场景4.1 基金组合归因4.2 基金经理能力刻画4.3 大类资产配置应用5. 模型的实现与实证案例研究写在最后 1. 引言 在 2. Brinson单期归因模型 2.1 模型框架 wp wb rp 组合收益:wp rp 择股收益:wb rp rb 择时收益:wp rb 基准收益:wb rb 2.2 公式推

Mikey_Sun的博客 1万+

内网横向移动小结

Windows-Mimikatz 适用环境:微软为了防止明文密码泄露发布了补丁 KB2871997,关闭了 Wdigest 功能。当系统为 win10 或 2012R2 以上时,默认在内存缓存中禁止保存明文密码,此时可以通过修改注册表的方式抓取明文,但需要用户重新登录后才能成功抓取。1、在线读2、离线读(解决Mimikatz被拦截)Procdump是微软官方的工具,可在命令行将lsass导出且杀软不会拦截下载之后3、解决高版本读取问题。

qq_61475980的博客 2224

【教程4>第7章>第6节】基于FPGA的Viterbi维特比译码verilog实现——ACS加比选单元1

本文介绍了ACS加比选单元模块在FPGA中的实现过程,重点讲解了维特比译码中的ACS单元功能及其在硬件实现中的关键问题。文章首先概述了ACS单元在维特比译码中的作用,即通过计算和比较分支度量值来选择最优路径。接着,详细描述了FPGA实现中的分支度量值归一化处理策略,并指出了其存在的弊端。随后,文章提供了基于Verilog的ACS加比选单元模块代码,解释了其输入输出端口及工作流程。最后,总结了本小节内容,并预告了下一章节将涉及ACS顶层模块的开发与仿真测试。

FPGA/MATLAB学习教程/源码/项目合作开发 568

C# USB通信实现

在C#中,我们可以利用.NET框架提供的类库和API来实现与USB设备的通信。本文将介绍如何使用C#进行USB通信,并提供相应的代码示例。以上就是使用C#进行USB通信的基本过程。通过以上代码示例,你可以实现与USB设备的简单通信,具体的实现方式和细节根据你的实际需求进行调整和扩展。命名空间,该命名空间包含了与串口通信相关的类和方法。选择需要通信的USB设备,然后使用。步骤二:获取可用的USB设备列表。首先,在你的C#项目中引入。步骤三:打开USB端口。步骤六:关闭USB端口。步骤一:引入命名空间。

PixelProX的博客 4382

视频教程-安装和配置 Windows Server 2012 Hyper-V-Windows

Windows Server 2012 Hyper-v 管理 Technet...

weixin_29556007的博客 226

基于RK3568的YOLOv11模型端侧推理优化与部署实战指南

在AI边缘计算领域,瑞芯微RK3568芯片凭借其强大的NPU算力和丰富的接口资源,成为了众多开发者的首选平台。然而,瑞芯微官方文档虽然提供了YOLO11预训练模型的部署方案,但对于需要自定义数据集训练的开发者来说,从模型训练到板端部署的完整流程却缺乏详细指导。本文将带你走完从环境搭建、数据准备、模型训练到最终板端部署的完整技术路线,并分享实际开发中遇到的各种坑点和解决方案。让我们一起探索如何在RK3568平台上实现30FPS稳定推理的YOLO11目标检测应用!

m0_64661770的博客 115

视频教程-安装和配置 Windows Server 2012 R2 Hyper-V-Windows

Windows Server 2012 R2 Hyper-V 管理 Tech...

weixin_29551669的博客 381

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

移动端开发小结 移动端开发小结

http://classjs.com/tag/%E7%A7%BB%E5%8A%A8%E7%AB%AF%E5%BC%80%E5%8F%91/ 转载于:https://www.cnblogs.com/xiaozhanga4/archive/2012/02/24/2366188.html

weixin_30858241的博客 53

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

2012年度工作总结

2012年轰轰烈烈的过去了,在这被玛雅人诅咒的一年,发生了太多的事情。临近年末,我们也来谈谈经验,说说得失,小结一下。   转 向   2011年年底,在结束了电力科学院的J2EE项目之后,正式转到android的开发中来。转型的时候,倒是没怎么纠结,就是看好移动互联网的前景,便义无返顾的冲了进来。那个时候,对于J2EE的经验并不算多,学习了很长时间,各种技术和复杂的框架。相比较而言,Andr

望月听涛 2156

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

移动端web页面知识小结之像素、物理像素、逻辑像素

一直以来,本人对移动端分辨率、像素等概念傻傻分不清,特查阅多位牛人博客后总结如下要点,以便日后查看。 文档来源http://weizhifeng.net/you-should-know-about-dpi.html http://www.chinaz.com/manage/2015/0902/441624.shtml http://www.cnblogs.com/2050/p/3877280

aiolos1111的专栏 1万+

项目驱动学习:暑假高效提升硬技能的闯关式实践指南

项目驱动学习是一种高效掌握技术的方法论,其核心原理是通过完成一个具体的、可交付的项目目标,反向驱动知识的学习与应用。这种方法的价值在于将抽象的理论知识转化为解决实际问题的能力,有效避免了传统学习方式中理论与实践脱节的问题。在工程实践中,它要求学习者从环境配置、工具使用开始,经历需求分析、功能实现、调试排错到最终部署上线的完整流程,从而深入理解技术栈的协作与项目的生命周期管理。无论是Web开发、数据分析、UI设计还是视频制作,采用项目驱动的方式都能帮助学习者在真实的开发场景中,系统性地构建知识体系并积累可展示

weixin_33796205的博客 413

基于React Native的移动平台研发实践分享

本文目录: 一、React Native 已经成为了移动前端技术的趋势 二、基于React Native 进行移动平台研发过程中的一些思考 三、基于React Native 进行移动平台研发过程中的一些实践 四、小结 一、React Native 已经成为了 移动前端技术的趋势 从2014年年底,Facebook计划开源React Nati

郝振明的博客 1万+

内网安全--小结

横向移动系列点:系统点:详细点:SSH;Exchange,LLMNR 投毒,Plink,DCOM,Kerberos_TGS,GPO&DACL,域控提权漏洞,约束委派,数据库攻防,系统补丁下发执行,EDR 定向下发执行等。约束委派:首先判断委派的第二个设置,然后看针对用户,后续钓鱼配合非约束委派:首先判断委派的第三个设置,然后看针对用户,主动攻击资源约束委派:只看 DC 是不是 2012 及以上帮版本,然后看针对用户,主动攻击 .

金灰的博客 5974

内网渗透-最实用的横向移动总结

0x00 内网横向移动简介 上期介绍了内网的信息收集,接下来一度时间实现内网的横向移动,内网的渗透过程一一介绍,通过内网主机掌控整个域环境。 0x01 内网横向移动的两种方式 内网的横向移动的方式有传递和漏洞两种: 所谓传递就是通过内置的一系列协议与命令,例如:at,schtasks,psexec,smbexec,wmic,PTH,PTT,PTK等,实现达到渗透其他内网主机,所谓的内网渗透其实就是一个内网的信息收集,掌握了域内的账户密码信息,主机信息,也就掌握了整个域,我们就是要通过横向移动的方式去获取到

告白的博客 6337

移动云计算应用开发入门经典

《移动云计算应用开发入门经典》基本信息原书名:Beginning Mobile Application Development in the Cloud作者: (美)罗杰(Rodger, R.) [作译者介绍]译者: 王英群 赵松德丛书名: 移动与嵌入式开发技术出版社:清华大学出版社ISBN:9787302306580上架时间:2012-12-27出版日期:2013 年1月开本:16开页码:1版次...

weixin_33991727的博客 171

HTML5移动Web开发指南

HTML5移动Web开发指南     编辑推荐   绝无仅有的HTML5移动Web开发专著   jQuery Mobile、Sencha Touch、PhoneGap入门首选   HTML5研究小组成员原创书籍  示例丰富,轻松上手       基本信息 作者: 唐俊开   出版社:电子工业出版社 ISBN:9787121160837 上架时间:2012-4-9...

china-pub网上书店 246

2012,小团队怎么才能玩得好?

【编者按】本文作者李文栋先生,JOYTOUCH负责人、制作人和资深艺术指导。 JOYTOUCH是一家致力于开发多平台原创游戏的团队,没有宏远的理想,只想做大家都去玩的游戏。12月初推出的《Crazy Bomber》(疯狂炸弹人)是一款国产原创休闲娱乐游戏,画面精美,容易上手,加上丰富有趣的关卡和节奏很棒的音乐,获得了良好的市场反馈。本文是作者对JOYTOUCH这一年征战app市场的心得小结,也

雷锋网 539
上一篇: github常用命令
下一篇: Box2d写的草帽海贼旗_抽风飘飘型
iwinterice
博客等级 码龄12年 3粉丝 21原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值