退后一步看问题,看更大的蓝图、更完整的信息。虽然你是一个很优秀的编程高手,但编程的目的是为了解决问题。
(本文来自:A8U扎金花 http://www.a8u.net/news_html/39.html)
墨衍会员
·
AI 创作全网分发
墨衍智能分发
本文由作者通过墨衍一键同步至各平台
1分发平台
2.3k累计阅读
2.3k平均单平台
已同步平台
优快云
微信公众号
微博
知乎
掘金
百家号
博客园
抖音
小红书
你的文章也可以这样分发
墨衍会员 ¥399起/年,写一次发全网
我也要 →
码龄22年
退后一步看问题,看更大的蓝图、更完整的信息。虽然你是一个很优秀的编程高手,但编程的目的是为了解决问题。
(本文来自:A8U扎金花 http://www.a8u.net/news_html/39.html)
当前文章被以下社区和专栏收录:
空天大模型详解
空天大模型是指面向空天信息领域(如卫星遥感、导航、气象等)设计的多模态人工智能模型,能够处理海量遥感数据、多传感器信息及跨时空分析任务。多模态融合:整合可见光、雷达、热红外、多光谱等多源遥感数据,构建统一表征空间,例如“空天·灵眸”3.0版支持航空、卫星及无人机数据的自动化解译。轻量化与高效推理:针对星载计算场景,采用分层量化、跨模态蒸馏技术压缩模型参数(如JigonGPT从1.02B压缩至0.23B,性能仅牺牲5.2%)18,并通过热传导架构提升计算速度2.4倍。神经符号结合。
程序员——了解用户的需求
最近一直在做一个公司内部的认账系统。 由于是小公司,并且是第一版,需求并不是很明确,有些内容,逻辑得程序员自己琢磨(苦逼啊)。 然后呢,其中就有这么个内容,由于原流程还需要涉及到订单的状态,比较复杂,就简单的只用:认账+开票来做个简单的流程图 1.财务的流程其实非常简单,是这样的:只需要最后的认账,与开票金额相同就可以了 2.但是,作为程序员,做系统的时候,就想的多了,导致
HHD Device Monitoring Studio:破解版在串口调试中的实战应用
本文详细介绍了HHD Device Monitoring Studio破解版在串口调试中的实战应用,包括安装指南、串口监控功能解析、Modbus RTU协议分析案例以及自定义协议解析技巧。通过具体操作步骤和性能优化建议,帮助开发者高效完成端口监控和调试任务,提升工作效率。
程序员思考方法学习:如何处理接到的需求任务
需求的描述问题 软件开发中,程序员的工作一般由需求来定义。不同的需求描述方式,可能会对程序员理解需求产生影响。很多公司开发模式基于功能列表,这个列表里面的规定了产品功能,各开发组从产品经理那里领开发列表,然后“照单抓药”进行开发。但通常这个功能列表只是一些简单的描述,不能看到全局。 很多时候,程序员都只知道要开发的功能是什么,但这个功能是谁在什么样的场景下使用,却不清楚。因为这种功能列表的方式...
晶振(晶体振荡器)测试方法详解
晶振测试方法分为无源和有源两种类型。无源晶振(两脚)需用示波器测试波形,重点关注正弦波形状、200mV-1.5Vpp幅值和频率精度;有源晶振(四脚)通电后直接输出方波。测试要点包括:示波器使用10X探头、AC耦合,带宽需5倍于晶振频率;万用表可初筛短路/开路;替换法是工程最有效方法。常见故障排查顺序:供电→复位→焊接→型号→负载电容→波形观察→更换晶振→MCU配置。负载电容需按公式计算匹配,示波器观察是核心测试手段。
别再乱选保护板了!手把手教你用ABLIC S-8254A为3/4串锂电池组DIY安全保护电路
本文详细介绍了如何使用ABLIC S-8254A保护集成电路为3/4串锂电池组DIY安全保护电路。从选型策略、电路搭建到功能验证,手把手教你实现可靠的充放电保护系统,适用于无人机、电动工具等场景,确保锂电池组的安全使用。
程序员的需求分析
作为一个开发人员,怎样一步步地做好应用的需求定位和分析,这是很重要的 。一个好的需求定位和明确的分析,可以让你在之后的工作,事半功倍,让系统的功能和可用性得到很大的提高。 ###第一步、收集需求 ####如何收集需求? 1、对于用户进行有针对性的访谈(因为我们需要了解和明白核心需求,后期的业务会主要围绕这些部分进行开展) 2、对于内部需求的收集,需要内部人员提供需求使你明确需求提出的目的,并提供解...
翁恺-C语言程序设计 PTA习题集
代码练习题
初级程序员 需求分析那点事(一)
需求分析的一点经验之谈,可能比较笼统。 工作中,我把这一块总结为,四要素,地点、人物、时间、事件,是不是有点像写作文,不用怕,没那么复杂。 简单例子“老板在QQ给我留言说:下周一,要一个设备管理功能” 1、地点 在什么地方接受的任务,不要主观,我所说的地方,不一定指的是走廊,办公桌,而是在 口头,qq上,文本文件,等等,不要觉得这个不重要,因为他是 “案发现场”,上学的时,大家都
网络无线AP信号走场测试软件(Ekahau 使用说明)
每次开启 Ekahau 软件需要重复此过程,才可以正常使用。 双击“Ekahau Pro activation.reg”,如下图所示; 点击“Yes”按钮 ,进行注册表合并; 点击“OK”按钮,确认; 运行“Ekahau Pro” 点击“Close”关闭提示; 点击“OK”,关闭提示; ...
《网络摄像机实战⑦:嵌入式端AWS KVS IoT SDK 库编译与测试全流程-君正/瑞芯微/全志(超详细指南)》
本文介绍了AWS音视频和物联网解决方案的核心组件与集成方法。主要内容包括:1)Amazon Kinesis Video Streams(KVS)提供的WebRTC托管服务,支持实时音视频流传输与双向交互;2)AWS IoT云服务实现设备连接与集成;3)详细说明了KVS WebRTC库的编译过程,包括源代码下载、CMake配置和依赖库生成;4)KVS Producer库的集成方法,重点阐述了存储空间调整和mbedtls版本适配等关键修改点。文章为开发者提供了AWS音视频和物联网服务的技术实现指南,特别针对嵌入
程序员如何对待客户“不合理的需求”。
2019独角兽企业重金招聘Python工程师标准>>> ...
SAP_ABAP_MM_BAPI清单案例教程——采购发票校验/预制_BAPI_INCOMINGINVOICE_PARK_MIRO
SAP ABAP BAPI_INCOMINGINVOICE_PARK BAPI 采购发票预制 采购发票校验 代码模版
不让程序员和客户沟通是有原因的...
🔍在多数人的刻板印象中,程序员总是自带的标签。在做软件开发项目的时候,团队也基本不会让程序员直接和客户对接。但是别误会,这可不是瞧不起程序员的沟通能力,🙅也不是故意搞信息封锁,而是项目管理里的 “老司机” 们,摸爬滚打总结出来的经验。
android 蓝牙通讯demo
android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。
Camera2Demo
在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作
程序员应该如何去设计需求
刚出道的程序员,在做需求分析的时候,总是经常挨批,客户说他们不能按照客户的要求去设计原型,领导说他们不用心去与客户沟通交流。程序员总是感到自己很冤枉,明明客户没有给出一点建设性建议,程序员按照自己的意愿去设计实现之后,结果却不是客户所需要的,程序员的怎么就那么悲催呢?
深度学习工具包 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');```[](https://bitdeli.com/free "Bitdeli Badge")
疫情期间,程序员开展副业的时候怎么和客户沟通呢?记住下面这几条,是你有一桶金的第一步!
不同的身份 一直对自由职业报有期待,虽然现在还是一颗螺丝钉. 我想,为了更好的创造自己的价值,我可否用自己的技能做一些东西呢? 于是,工作之外,我开始寻找接单做项目. 现在,这种程序员接单的平台有很多,国内国外都有. 可是万事开头难,有这种渠道不一定自己可以接到单. 于是,第一次的步子迈得很是缓慢,年龄也越来越大,怎么突围呢? 一次偶然的机会,公司老板在群里发一则消息,说有下班之余有时间的可以来搞...
程序员幽默一则
<br /> <br />昨天看了一则幽默:<br />老婆给当程序员的老公打电话:“下班顺路买一斤包子带回来,如果看到卖西瓜的,买一个。” 当晚,程序员老公手捧一个包子进了家门。老婆怒道:“你怎么就买了一个包子?!” 老公答曰:“因为看到了卖西瓜的。”<br />有网友点评:<br />理解问题 ,表达问题。老婆的意思:回来了买一斤包子在来一个西瓜。他就是理解成,先要一斤包子,看到西瓜后就要一个包子。所以一个包子。<br /> 老婆 这样跟老公说:“下班顺路买一斤包子带回来了,如果有卖一个西瓜的,也买一
为什么不让程序员直接对接客户,而是通过产品经理?
经过十多年的职业经历,从程序员到创业者,我对这个问题有了更加深刻和全面的理解。程序员不直接对接客户,通过产品经理这个角色来沟通,不是对程序员能力的质疑,而是现代软件开发专业化分工的必然选择。专业分工是行业成熟的标志回顾软件开发行业的发展历史,我们可以看到专业分工的不断演进。在早期的软件开发中,程序员确实需要身兼数职,既要编程又要与用户沟通。但随着行业的发展和成熟,专业分工越来越细化,这是任何行业发展的必然趋势。
程序员面对产品提出的不合理需求,你们会怎么办?
1.提出质疑,然后产品并不能说服我,当然最后还是做了那些奇葩需求。 2.客户提出的是问题,是解决方案,但是不一定是需求。 需求通常是深层次的,由于某些原因并不能直接表达出来。 解决方案通常是可见的外在形式,比如导出报表。 3.人生三境界 看山是山,看水是水;看山不是山,看水不是水;看山还是山,看水还是水 1.看见什么是什么, 山就是山,水就是水。 2.对世界的理解越来越复杂,遇事总是想透过现象看本质。 3.选择性的看待世界,需要复杂的时候就...
客户,客户……程序员,How to telnet to 客户’s Heart?
昨天经理在外面打电话让我做两件事:第一:上午给客户**局升级软件;第二:下午给客户老家升级软件并把一铁箱子(48V变压器)捎给客户。这两件事我已经完满的完成。今天上午经理来了问了我两句,表示满意,然后又出去了。过了一会,客户方*主任,打过电话,很生气。说为什么不帮他们看看他们硬件业务系统运行情况(在我方软件中有记录),并告诉他。他说给我们经理说了。记录我是看了(表示软件
程序员——[小鸟语录]
我也说说我对程序员的认识吧,从业时间不算长,只有三年,但回想起这三年来的经历,对行业内的一些话,感触颇深。 “做行业的专家”,这是一个10年IT从业的前辈说得一句话,他这句话里在当时所指的行业,并不是指编程,而是比如电信、电力、广电、银行之类的行业,而现在我的理解,这句话的意思是成为一个领域在行业中应用的专家,打个比方,你做电视台的媒体资产管理的,首先得知道媒体资产管理是个什么东西?电视台
蒙泓羽:如果没掌握这个客户筛选心法,你将永远被客户牵着鼻子走!
今天我想与程序员朋友们分享一个话题,这个话题关乎你们是否曾经有过这样的困扰:尽管你的技术能力出众,但总是被客户牵着鼻子走,无法有效地引导他们的需求。通过运用这个客户筛选心法,你将能够更好地理解客户需求,更精准地定位目标客户,更有效地引导他们并实现商业目标。客户筛选并非是一个独立的技术或工具,而是一种策略,它可以帮助你更好地了解客户需求,将精力集中在最有价值的客户身上,并减少无意义的努力。如果你的答案是“否”,那么请继续往下读,因为我将向你介绍一个非常重要的心法:客户筛选。那么,如何运用这个客户筛选心法呢?
优快云:用段子解读程序员眼中的设计奥秘
程序员需要凭借丰富的经验和敏锐的洞察力,从客户零散的表述中提炼出关键信息,将抽象的需求转化为具体的设计方案。就像赛车手追求赛车的极致性能一样,程序员通过对代码的优化,减少资源消耗,提高运行效率,让程序在竞争激烈的数字世界中脱颖而出。“团队设计项目就像一组庞大的齿轮组,需求分析、架构设计、编码实现、测试优化,每个环节就像不同大小的齿轮,只有紧密咬合、协同转动,整个系统才能顺利运行。这些段子源于日常工作的点滴,以轻松有趣的方式,揭示了程序员在设计工作中的思考方式、面临的挑战以及对设计本质的理解。
程序员接单必看!!!
网络接单其实已经是一个老生常谈的话题了,不少程序员已经在这条赛道上取得了喜人的亮眼成绩,有很多人因此月入好几十K,轻轻松松实现财富自由,这真的让我眼红啊!因此,我也是马不停蹄的加入了赛道,确实只要我保证项目质量,尽善尽美的完成,这钱一下就到手了,而且不仅没有耽误我的本职工作,还让我的技术更加得心应手了,简直不要太爽了!在我自己接单的过程中,我发现其实咱只要平台选得好,钱已经有大半都到手了,一个靠谱的平台简直就是我们上战场的高精尖武器,一打一个准儿,搞钱随处可做,随时可行!
伟大程序员必须具备的7个好习惯
当我们被采访的时候,常常会问及这样一个问题——一个伟大的程序员需要具备哪些特质。大多数人回答的是逻辑、机智、耐心以及勤奋。对于这个问题,其实并没有标准答案,但是除了这些特质,习惯也是非常重要的因素。而这一点则只能在已经进入正轨的团队组织中可以窥见。 除了必需的技术技能和逻辑能力,下面讲一下一个团队应该具备怎样的好习惯: 1. 良好的时间管理 迟到对于任何一家公司都是个头痛的问...
7643
130

被折叠的 条评论
为什么被折叠?



