`
superjavason
  • 浏览: 110105 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

How do you recognise good programmers

阅读更多

zz from http://developers.slashdot.org/article.pl?sid=08/01/11/1746250

 

It’s not as easy as it sounds. CV experience is only of limited use here, bec
ause great programmers don’t always have the “official” experience to demon
strate that they’re great. In fact, a lot of that CV experience can be mislea
ding. Yet there are a number of subtle cues that you can get, even from the CV
, to figure out whether someone’s a great programmer.

I consider myself to be a pretty good programmer. At the same time, I’ve spen
t a fair amount of time on the business side of the fence, filtering technical
CVs for projects, interviewing people, etc. Thanks to this, I think I have a
bit of experience in recognising good programmers, and I want to share it in t
his article, in the hope that it may help other “business guys” to recognise
good programmers. And, who knows, perhaps some programmers who have the poten
tial to be good but haven’t really exploited this can also read this and real
ise what they need to do to become good (although, as I’ll argue, that’s def
initely not accessible to all programmers!).

In his article The 18 mistakes that kill startups, Paul Graham makes the follo
wing point:

“… what killed most of the startups in the e-commerce business back in the 9
0s, it was bad programmers. A lot of those companies were started by business
guys who thought the way startups worked was that you had some clever idea and
then hired programmers to implement it. That’s actually much harder than it
sounds—almost impossibly hard in fact—because business guys can’t tell whic
h are the good programmers. They don’t even get a shot at the best ones, beca
use no one really good wants a job implementing the vision of a business guy.


In practice what happens is that the business guys choose people they think ar
e good programmers (it says here on his resume that he’s a Microsoft Certifie
d Developer) but who aren’t. Then they’re mystified to find that their start
up lumbers along like a World War II bomber while their competitors scream pas
t like jet fighters. This kind of startup is in the same position as a big com
pany, but without the advantages.

So how do you pick good programmers if you’re not a programmer? I don’t thin
k there’s an answer. I was about to say you’d have to find a good programmer
to help you hire people. But if you can’t recognize good programmers, how wo
uld you even do that?”

I disagree with Mr Graham on this one. I think there are a number of very stro
ng indicators of a “good programmer” (and, conversely, strong indicators of
a “not-so-good programmer”) that even a business guy can recognise. I’ll su
mmarise some key indicators and counter-indicators in a list at the end of the
article.

#1 : Passion

In my corporate experience, I met a kind of technical guy I’d never met befor
e: the career programmer. This is a person who’s doing IT because they think
it’s a good career. They don’t do any programming in their spare time. They’
re shocked when they find out I have a LAN and 3 computers at home. They just
do it at work. They don’t learn new stuff unless sent on a training program (
or motivated by the need to get a job that requires that technology). They do
“programming” as a day job. They don’t really want to talk about it outside
of work. When they do, they talk with a distinctive lack of enthusiasm. Basic
ally, they lack passion.

I believe that good developers are always passionate about programming. Good d
evelopers would do some programming even if they weren’t being paid for it. G
ood programmers will have a tendency to talk your ear off about some technical
detail of what they’re working on (but while clearly believing, sincerely, t
hat what they’re talking about is really worth talking about). Some people mi
ght see that as maladapted social skills (which it is), but if you want to rec
ognise a good developer, this passion for what they’re doing at the expense o
f social smoothness is a very strong indicator. Can you get this guy to excite
dly chat up a technology that he’s using, for a whole half hour, without losi
ng steam? Then you might be onto a winner.
#2 : Self-teaching and love of learning

Programming is the ultimate moving target. Not a year goes by without some new
technology robbing an old, established standard blind and changing half the d
evelopment universe. This is not to say that all good programmers pick up thes
e changes and ride the bleeding edge. However, there’s a class of programmers
that will never, ever pick up a new technology unless forced to, because they
don’t like learning new stuff. These programmers will typically have learnt
programming at university, and expect to get by on whatever skills they picked
up there, plus whatever courses their company is willing to send them on.

If you’re thinking of hiring someone as a programmer, and he ever utters the
words “I can work with that, just send me on a training course for a week and
I’ll be good at it”, don’t hire that guy. A good programmer doesn’t need
a training course to learn a new technology. In fact, the great programmer wil
l be the one talking your ear off about a new technology that you haven’t eve
n heard of, explaining to you why you must use it in your business, even if no
ne of your staff knows how to use it. Even if it’s a technology he doesn’t k
now how to use yet.
#3 : Intelligence

Some business people assume that lack of social tact and lack of intelligence
are the same. Actually, intelligence has several facets, and emotional/social
intelligence is only one of them. Good programmers aren’t dumb. Ever. In fact
, good programmers are usually amongst the smartest people you know. Many of t
hem will actually have pretty good social skills too. The cliché of the progr
ammer who’s incapable of having a conversation is just that - a cliché. I’v
e been to a few meetings of the London Ruby User Group and I can say that with
only a very few exceptions, most people there are smart, talkative, sociable,
have varied interests, etc. You wouldn’t look at them chattering away in the
pub and think “what a bunch of geeks!” - at least until you approach a grou
p and realise they’re talking about the best way to design a RESTful applicat
ion with a heavy UI frontend.

This doesn’t mean that they’ll all feel comfortable in every social context.
But it does mean that if the context is comfortable and non-threatening enoug
h, you’ll be able to have as great a conversation with them as you would with
the most “socially enabled” people (perhaps better, since most good program
mers I know like their conversation to revolve around actually useful topics,
rather than just inane banter).

Don’t ever hire a dumb person thinking they’re a good developer. They’re no
t. If you can’t have a great conversation with them in a relaxed social conte
xt, they’re very likely not a good programmer. On the other hand, anyone who’
s clearly very smart at the very least has a strong potential to be a good or
great programmer.
#4 : Hidden experience

This is correlated with the “Passion” point, but it is such a strong indicat
or that I’d like to emphasise it with its own point.

I started programming when I was about 9, on a Commodore 64. I then migrated o
nto the PC, did some Pascal. When I was 14 I wrote a raycasting engine in C an
d Assembler, spent a large amount of time playing with cool graphic effects th
at you could get your computer to do by messing directly with the video card.
This was what I call my “coccoon stage”. When I entered that stage, I was a
mediocre programmer, and lacked the confidence to do anything really complicat
ed. When I finished it, I had gained that confidence. I knew that I could code
pretty much anything so long as I put my mind to it.

Has that ever appeared on my CV? Nope.

I strongly believe that most good programmers will have a hidden iceberg or tw
o like this that doesn’t appear on their CV or profile. Something they think
isn’t really relevant, because it’s not “proper experience”, but which act
ually represents an awesome accomplishment. A good question to ask a potential
“good programmer” in an interview would be “can you tell me about a person
al project - even or especially one that’s completely irrelevant - that you d
id in your spare time, and that’s not on your CV?” If they can’t (unless th
eir CV is 20 pages long), they’re probably not a good programmer. Even a prog
rammer with an exhaustive CV will have some significant projects that are miss
ing from there.
#5 : Variety of technologies

This one’s pretty simple. Because of the love of learning and toying with new
technologies that comes with the package of being a “good programmer”, it’
s inevitable that any “good programmer” over the age of 22 will be fluent in
a dozen different technologies. They can’t help it. Learning a new technolog
y is one of the most fun things a programmer with any passion can do. So they’
ll do it all the time, and accumulate a portfolio of things they’ve “played
around with”. They may not be experts at all of them, but all decent programm
ers will be fluent in a large inventory of unrelated technologies.

That “unrelated” bit is the subtle twist. Every half-decent java programmer
will be able to list a set of technologies like “Java, J2EE, Ant, XML, SQL, H
ibernate, Spring, Struts, EJB, Shell scripting”, etc.. But those are all part
of the same technology stack, all directly related to each other. This is pos
sibly hard to recognise for non-programmers, but it is possible to tell whethe
r their technology stack is varied by talking to them about it, and asking the
m how the different technologies they know relate to each other. Over-speciali
sation in a single technology stack is an indicator of a not-so-good programme
r.

Finally, if some of those technologies are at the bleeding edge, that’s a goo
d positive indicator. For instance, today (November 2007), knowledge of Merb,
Flex, RSpec, HAML, UJS, and many others… Please note that these are fairly cl
osely related technologies, so in a couple of years, someone who knows all the
se will be equivalent to someone familiar with the Java stack listed in the pr
evious paragraph.

Update: As a clarification to this point, there’s in fact two indicators here
: variety and bleeding edge. Those are separate indicators. A good variety of
technologies across a period of time is a positive indicator, whether or not t
he technologies are bleeding edge. And bleeding edge technologies are a positi
ve indicator, whether or not there’s a variety of them.
#6 : Formal qualifications

This is more a of non-indicator than a counter-indicator. The key point to out
line here is that formal qualifications don’t mean squat when you’re trying
to recognise a good programmer. Many good programmers will have a degree in Co
mputer Science. Many won’t. Certifications, like MCSE or SCJP or the like, do
n’t mean anything either. These are designed to be accessible and desirable t
o all. The only thing they indicate is a certain level of knowledge of a techn
ology. They’re safeguards that allow technology recruitment people in large c
orporations to know “ok, this guy knows java, he’s got a certification to pr
ove it” without having to interview them.

If you’re hiring for a small business, or you need really smart developers fo
r a crack team that will implement agile development in your enterprise, you s
hould disregard most formal qualifications as noise. They really don’t tell y
ou very much about whether the programmer is good. Similarly, disregard age. S
ome programmers are awesome at 18. Others are awesome at 40. You can’t base y
our decisions about programmer quality on age (though you might decide to hire
people around a certain age to have a better fit in the company; please do no
te that age discrimination is illegal in most countries!).

As a final note to this, in my experience most average or poor programmers sta
rt programming at university, for their Computer Science course. Most good pro
grammers started programming long before, and the degree was just a natural co
ntinuation of their hobby. If your potential programmer didn’t do any program
ming before university, and all his experience starts when she got her first j
ob, she’s probably not a good programmer.
Disclaimer

None of the indicators above or below are sure-fire indicators. You will find
great programmers who break some of those moulds. However, my view is, you’ll
rarely find a great programmer that breaks all of them. Similarly, you may fi
nd poor programmers that meet (or appear to meet) some of these criteria. But
I do strongly believe that the more of these criteria a programmer meets, the
more likely they are to be one of those elusive “good programmers” that, as
a business guy, you need to partner with.
The criteria in bullets

So, in summary, here are some indicators and counter-indicators that should he
lp you recognise a good programmer.

Positive indicators:

    * Passionate about technology
    * Programs as a hobby
    * Will talk your ear off on a technical subject if encouraged
    * Significant (and often numerous) personal side-projects over the years
    * Learns new technologies on his/her own
    * Opinionated about which technologies are better for various usages
    * Very uncomfortable about the idea of working with a technology he doesn’
t believe to be “right”
    * Clearly smart, can have great conversations on a variety of topics
    * Started programming long before university/work
    * Has some hidden “icebergs”, large personal projects under the CV radar

    * Knowledge of a large variety of unrelated technologies (may not be on CV
)

Negative indicators:

    * Programming is a day job
    * Don’t really want to “talk shop”, even when encouraged to
    * Learns new technologies in company-sponsored courses
    * Happy to work with whatever technology you’ve picked, “all technologie
s are good”
    * Doesn’t seem too smart
    * Started programming at university
    * All programming experience is on the CV
    * Focused mainly on one or two technology stacks (e.g. everything to do wi
th developing a java application), with no experience outside of it

I hope these help. Let me know below if you have any comments, or anything to
add to them!

分享到:
评论
2 楼 dracularking 2009-01-09  
just like we like to get on javaeye
should be added to the positive indicators' list^^
1 楼 rubynroll 2008-01-17  
非常之有道理。这些方法对于挑选好的Programmer来说非常有效,同时对如何写好CV亦是很好的提示。Good !

相关推荐

    利用Simulink实现混合储能系统在直流微网中的下垂控制策略研究:保持直流母线电压稳定的实践与探究,Simulink仿真下的光储直流微网混合储能系统下垂控制策略优化研究(注意版本要求为2021A以上

    利用Simulink实现混合储能系统在直流微网中的下垂控制策略研究:保持直流母线电压稳定的实践与探究,Simulink仿真下的光储直流微网混合储能系统下垂控制策略优化研究(注意版本要求为2021A以上),混合储能系统 光储微网 下垂控制 Simulink仿真 注意版本2021A以上 由光伏发电系统和混合储能系统构成直流微网。 混合储能系统由超级电容器和蓄电池构成,通过控制混合储能系统来维持直流母线电压稳定。 混合储能系统采用下垂控制来实现超级电容和蓄电池的功率分配,蓄电池响应低频量,超级电容响应高频量。 通过改变光照来影响光伏出力,控制混合储能系统保持微网直流母线电压稳定在380V,不受光伏出力变化影响。 ,混合储能系统; 光储微网; 下垂控制; Simulink仿真; 版本2021A; 直流母线电压稳定; 光伏出力变化; 超级电容器; 蓄电池。,2021A+混合储能系统:光储微网下垂控制Simulink仿真研究

    JavaScript入门到精通: 全栈编程语言的基础与进阶学习指南

    内容概要:本文档是针对JavaScript这一跨平台解释型语言的详尽入门手册,首先概述了JavaScript的概念及其重要特性,强调它不仅适用于前端同时也活跃于Node.js的服务器环境之中,从而成为全栈开发的重要技能。紧接着文档阐述了JavaScript的基本语法元素如变量声明、数据类型、运算符及控制结构,让新手理解JavaScript的语法规则,并通过函数与对象操作加深印象。之后介绍了一些常见的实用工具和高级用法,例如模板字符串、解构赋值以及异步编程手段(比如Promise)。对于想要深入探索的应用场景给出了广泛的指引,无论是传统的web开发还是新兴领域的IoT或自动化脚本编写皆有所涉猎。 适合人群:对于那些没有编程背景或有其他编程经验但仍希望了解并擅长运用JavaScript的个人来说非常适合。 使用场景及目标:目的是向初学者提供足够的理论指导和技术实践机会,使他们能够在不同平台上利用JavaScript创造出有意义的作品;不论是想要从事专业软件开发或是业余项目爱好者都能够从中受益。 其他说明:文档还提供了大量权威且有用的外部链接供进一步深造学习,包括但不限于主流的在线课程、权威的技术参考资料及充满活力的支持社区。

    2D3D 中弗里德里希常数和庞加莱常数的计算 附Matlab代码.rar

    1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。

    级联H桥SVG无功补偿系统在不平衡电网中的三层控制策略:电压电流双闭环PI控制、相间与相内电压均衡管理,级联H桥SVG无功补偿系统在不平衡电网中的三层控制策略:电压电流双闭环PI控制、相间与相内电压均

    级联H桥SVG无功补偿系统在不平衡电网中的三层控制策略:电压电流双闭环PI控制、相间与相内电压均衡管理,级联H桥SVG无功补偿系统在不平衡电网中的三层控制策略:电压电流双闭环PI控制、相间与相内电压均衡管理,不平衡电网下的svg无功补偿,级联H桥svg无功补偿statcom,采用三层控制策略。 (1)第一层采用电压电流双闭环pi控制,电压电流正负序分离,电压外环通过产生基波正序有功电流三相所有H桥模块直流侧平均电压恒定,电流内环采用前馈解耦控制; (2)第二层相间电压均衡控制,注入零序电压,控制通过注入零序电压维持相间电压平衡; (3)第三层相内电压均衡控制,使其所有子模块吸收的有功功率与其损耗补,从而保证所有H桥子模块直流侧电压值等于给定值。 有参考资料。 639,核心关键词: 1. 不平衡电网下的SVG无功补偿 2. 级联H桥SVG无功补偿STATCOM 3. 三层控制策略 4. 电压电流双闭环PI控制 5. 电压电流正负序分离 6. 直流侧平均电压恒定 7. 前馈解耦控制 8. 相间电压均衡控制 9. 零序电压注入 10. 相内电压均衡控制 以上十个关键词用分号分隔的格式为:不

    基于时空RBF-NN的混沌时间序列预测 附Matlab代码.rar

    1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。

    基于主从博弈的动态定价策略与电动汽车充电管理优化在智能小区的实践(MATLAB+CPLEX gurobi实现),基于主从博弈理论的智能小区电动汽车充电与代理商动态定价策略优化研究,MATLAB代码:基

    基于主从博弈的动态定价策略与电动汽车充电管理优化在智能小区的实践(MATLAB+CPLEX gurobi实现),基于主从博弈理论的智能小区电动汽车充电与代理商动态定价策略优化研究,MATLAB代码:基于主从博弈的智能小区代理商定价策略及电动汽车充电管理 关键词:电动汽车 主从博弈 动态定价 智能小区 充放电优化 参考文档:《基于主从博弈的智能小区代理商定价策略及电动汽车充电管理》基本复现 仿真平台:MATLAB+CPLEX gurobi平台 主要内容:代码主要做的是一个电动汽车充电管理和智能小区代理商动态定价的问题,将代理商和车主各自追求利益最大化建模为主从博弈,上层以代理商的充电电价作为优化变量,下层以电动汽车的充电策略作为优化变量,通过优化得出最优电价策略以及动态充电策略。 ,电动汽车; 主从博弈; 动态定价; 智能小区; 充放电优化; MATLAB; CPLEX; gurobi平台。,基于主从博弈的电动汽车充电管理与定价策略优化MATLAB代码实现

    (程序、GUI、思路)MATLAB打印纸缺陷检测GUI设计.zip

    基于Matlab语言实现的设计项目 2、适用人群:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业或毕业设计中的部分功能,作为“参考资料”使用。 3、解压说明:本资源需要电脑端使用WinRAR、7zip等解压工具进行解压,没有解压工具的自行百度下载即可。 4、免责声明:本资源作为“参考资料”而不是“定制需求”,代码只能作为参考,不能完全复制照搬。不一定能够满足所有人的需求,需要有一定的基础能够看懂代码,能够自行调试代码并解决报错,能够自行添加功能修改代码。由于作者大厂工作较忙,不提供答疑服务,如不存在资源缺失问题概不负责,谢谢理解。

    《基于 Transformer 的恶意软件检测器》(毕业设计,源码,教程)简单部署即可运行。功能完善、操作简单,适合毕设或课程设计.zip

    资源内项目源码是均来自个人的课程设计、毕业设计或者具体项目,代码都测试ok,都是运行成功后才上传资源,答辩评审绝对信服的,拿来就能用。放心下载使用!源码、说明、论文、数据集一站式服务,拿来就能用的绝对好资源!!! 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、大作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。 4、如有侵权请私信博主,感谢支持

    Labiew噪音与振动检测模块源码揭秘:傅里叶变换与倍频程技术应用于实际项目,LabVIEW平台噪声与振动检测模块源码解析:基于傅里叶变换与倍频程原理的实用功能模块,已成功应用于实际项目,虚拟产品退换

    Labiew噪音与振动检测模块源码揭秘:傅里叶变换与倍频程技术应用于实际项目,LabVIEW平台噪声与振动检测模块源码解析:基于傅里叶变换与倍频程原理的实用功能模块,已成功应用于实际项目,虚拟产品退换政策严谨执行,Labiew噪音与振动检测模块源码,改功能模块已运用到实际项目,原理是利用傅里叶变和倍频程实现的,产品一旦发概不 。 需要的可以联系哟 ,Labiew源码; 噪音与振动检测模块; 傅里叶变换; 倍频程; 实际项目运用,Labiew傅里叶变换倍频程噪音振动检测模块源码

    基于Comsol多物理场仿真的光伏集热器异形体建模技术研究,探索comsol多物理场仿真技术:光伏集热器异形体建模应用,comsol多物理场仿真,光伏集热器,异形体建模 ,comsol多物理场仿真;

    基于Comsol多物理场仿真的光伏集热器异形体建模技术研究,探索comsol多物理场仿真技术:光伏集热器异形体建模应用,comsol多物理场仿真,光伏集热器,异形体建模 ,comsol多物理场仿真; 光伏集热器仿真; 异形体建模,Comsol多物理场仿真在光伏集热器及异形体建模中的应用

    器官3D分割-基于WinForm框架开发的医学影像系统源码+sln+演示视频(毕设基于c#和python开发).zip

    器官3D分割-基于WinForm框架开发的医学影像系统源码+sln+演示视频(毕设基于c#和python开发).zip 【项目简单介绍】 主要功能 肺炎诊断 器官 3D 分割 该系统具备肺炎诊断和器官 3D 分割的功能,并模仿了罗万科技的系统界面风格。 python和c#开发实现

    界面GUI设计MATLAB BP的水果识别.zip

    MATLAB可以用于开发水果识别系统。这种系统通常利用机器学习和图像处理技术,对输入的水果图像进行特征提取和分类识别。以下是开发水果识别系统的一般步骤: 1. 数据收集:收集包含各种水果类别的图像数据集。 2. 数据预处理:对图像进行预处理,包括裁剪、缩放、灰度化等操作。 3. 特征提取:从每个水果图像中提取特征,例如颜色直方图、纹理特征、形状特征等。 4. 数据标记:为每个图像标记水果类别,形成训练集和测试集。 5. 模型训练:使用机器学习算法(如支持向量机、卷积神经网络等)对训练集进行训练,建立水果识别模型。 6. 模型测试:使用测试集对模型进行测试和评估,调整模型超参数以提高准确率。 7. 系统集成:将训练好的模型集成到MATLAB应用程序中,实现水果识别功能。 8. 用户界面设计:设计用户友好的界面,以便用户上传水果图像并查看识别结果。 MATLAB提供了丰富的图像处理工具箱和机器学习工具箱,可以帮助开发者快速构建水果识别系统。通过结合这些工具箱,可以实现水果的快速、准确识别。

    COMSOL声子晶体仿真研究:一维至三维能带与带隙分析及色散曲线弹性波声波分析,声子晶体仿真:COMSOL代做能带图、带隙图及弹性波、声波分析与优化设计,COMSOL代做 声子晶体仿真,一维,二维,三

    COMSOL声子晶体仿真研究:一维至三维能带与带隙分析及色散曲线弹性波声波分析,声子晶体仿真:COMSOL代做能带图、带隙图及弹性波、声波分析与优化设计,COMSOL代做 声子晶体仿真,一维,二维,三维能带图,带隙图,色散曲线,弹性波,声波。 ,COMSOL代做;声子晶体仿真;一维/二维/三维能带图;带隙图;色散曲线;弹性波仿真;声波分析,COMSOL声子晶体仿真专家:一至三维声波模拟及能带图绘制

    Matlab Simulink仿真探究Flyback反激式开关电源性能表现与优化策略,Matlab Simulink仿真探究Flyback反激式开关电源的工作机制,Matlab Simulimk仿真

    Matlab Simulink仿真探究Flyback反激式开关电源性能表现与优化策略,Matlab Simulink仿真探究Flyback反激式开关电源的工作机制,Matlab Simulimk仿真,Flyback反激式开关电源仿真 ,Matlab; Simulink仿真; Flyback反激式; 开关电源仿真,Matlab Simulink在Flyback反激式开关电源仿真中的应用

    陪读租房系统(源码+数据库+论文+ppt)java开发springboot框架javaweb,可做计算机毕业设计或课程设计

    陪读租房系统(源码+数据库+论文+ppt)java开发springboot框架javaweb,可做计算机毕业设计或课程设计 【功能需求】 本系统有三个角色:管理员、租客和房主,要求具备以下功能: (a) 管理员;管理员使用本系统涉到的功能主要有:首页、个人中心、租客管理、房主管理、房源信息管理、房源类型管理、教育书籍管理、文章分类管理、租房信息管理、合同信息管理、在线咨询管理、咨阅回复管理、教育论坛、系统管理等功能。 (b) 租客;进入前台系统可以实现首页、房源信息、教育书籍、教育论坛、公告信息、后台管理等功能进行操作。 (C) 房主;进入系统可以实现首页、个人中心、房源信息管理、租房信息管理、合同信息管理、在线咨询管理、咨询回复管理等功能进行操作。 【环境需要】 1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。 2.IDE环境:IDEA,Eclipse,Myeclipse都可以。 3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可 4.数据库:MySql 5.7/8.0等版本均可; 【购买须知】 本源码项目经过严格的调试,项目已确保无误,可直接用于课程实训或毕业设计提交。里面都有配套的运行环境软件,讲解视频,部署视频教程,一应俱全,可以自己按照教程导入运行。附有论文参考,使学习者能够快速掌握系统设计和实现的核心技术。

    vue3的一些语法以及知识点

    vue3的一些语法以及知识点

    libicu-doc-50.2-4.el7-7.x64-86.rpm.tar.gz

    1、文件内容:libicu-doc-50.2-4.el7_7.rpm以及相关依赖 2、文件形式:tar.gz压缩包 3、安装指令: #Step1、解压 tar -zxvf /mnt/data/output/libicu-doc-50.2-4.el7_7.tar.gz #Step2、进入解压后的目录,执行安装 sudo rpm -ivh *.rpm 4、更多资源/技术支持:公众号禅静编程坊

    水果销售商城(源码+数据库+论文+ppt)java开发springboot框架javaweb,可做计算机毕业设计或课程设计

    水果销售商城(源码+数据库+论文+ppt)java开发springboot框架javaweb,可做计算机毕业设计或课程设计 【功能需求】 水果购物网站用户可以注册登录,在首页开通会员卡,查看水果,购买水果,查看水果信息,以及个人中心修改个人资料,在自己的后台查看自己的购买记录等。 水果购物网站管理员功能:个人中心管理,用户管理,会员管理,会员卡管理,开通会员记录管理,积分管理,水果管理,购买水果订单管理,积分兑换管理,积分兑换记录管理,加积分记录管理,减积分记录管理。 【环境需要】 1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。 2.IDE环境:IDEA,Eclipse,Myeclipse都可以。 3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可 4.数据库:MySql 5.7/8.0等版本均可; 【购买须知】 本源码项目经过严格的调试,项目已确保无误,可直接用于课程实训或毕业设计提交。里面都有配套的运行环境软件,讲解视频,部署视频教程,一应俱全,可以自己按照教程导入运行。附有论文参考,使学习者能够快速掌握系统设计和实现的核心技术。

    基于Matlab的双输入深度学习模型构建指南:处理序列与图像数据的创新性应用,Matlab双输入深度学习模型搭建指南:如何处理两种输入数据并实现创新与优势,Matlab搭建双输入深度学习模型,双输入网

    基于Matlab的双输入深度学习模型构建指南:处理序列与图像数据的创新性应用,Matlab双输入深度学习模型搭建指南:如何处理两种输入数据并实现创新与优势,Matlab搭建双输入深度学习模型,双输入网络。 相比普通的单输入网络,双输入网络能处理两种输入数据,在科研上也更具有优势和创新性。 如何用Matlab搭建双输入网络也是困扰本人很长时间的一个问题,现已弄明白。 注意,需要Matlab 2022b及以上版本,以下版本估计是都不行。 本程序是两个输入全为一维序列的情况(第二个输入序列是第一个输入序列的特征值,或者变后的序列)。 也可改为两边输入都是图像,或者一边输入图像,一边输入图像的一维特征序列。 本程序工作如下: 1、加载数据,两种输入数据一一对应,第二个数据是第一个数据做FFT之后的序列,属于一个类别。 两种数据样本数相等,序列长度不相等。 2、搭建双输入网络,此网络一边是CNN-LSTM,一边是CNN。 3、训练。 4、测试,输出准确率。 注:程序可直接运行,包教会和调通。 可以有偿修改为两边输入都是图像,或一边输入图像一边输入序列的模型。 可有偿替数据,调通程序。 程序注释详

    十大管理的49个过程组强化记忆

    包含十大管理49个过程组的输入与输出和解释,还有EVA铮值管理的公式汇总和解释

Global site tag (gtag.js) - Google Analytics