它是编码吗?是否了解制图/地理/等概念(如投影)?还是其他困难?
#1 楼
从我近5年前进入ESRI / GIS开发领域的开发人员的经验来看:没有单一的API可以完成您想做的事情。只有一堆混乱的API可能无法实现您的目的:ArcObjects,Python,REST,SOAP,ADF,ST_Geometry运算符?
所有API都与某些笨拙,昂贵的软件捆绑在一起而不是放在应用程序的核心。
真正创意设计的机会很小。面向对象的地理空间数据结构?算了吧。尽管有很多关于“对象”和“功能类”的讨论,但您仍在使用由易变的中间件介导的哑表。
该软件有错误,错误消息误导和文档不完整。故障排除几乎总是反复试验。习惯它。
使用关系数据库方法管理地理空间数据几乎是不可能的。我几乎不得不放弃任何SQL / DDL,因为它们只会使我对中间件产生麻烦(是的,我在谈论ArcSDE)。丢掉整个技能组实在可惜。只需打开ArcCatalog,指向,单击即可。
您可以看出我对ESRI开发前景持负面看法。对于那些来自地理背景的人,我相信可能性是非常令人兴奋的。但是对于像我这样的人来说,他们喜欢关系数据库,面向对象的程序设计以及创造性解决方案的广泛开放机会,因此使用ESRI进行GIS开发是非常困难且无法实现的。这很遗憾,因为老派人群告诉我,在与Microsoft结盟之前,它曾经是一个优越的环境。我衷心希望开源社区继续创新。
评论
我是统计学家,并且对ESRI产品有非常相似的投诉。我的过于乐观的理论是,由于计算机可能早于GIS应用于统计数据,所以GIS软件(在SAS / SPSS阶段)比统计软件晚约十年,并且一个真正出色的开源程序或堆栈即将出现爆发。也许已经有-自从我有机会参加非ESRI计划以来已经有好几年了。
–马特·帕克(Matt Parker)
2010年8月13日在15:40
我只是想和其他人一起在雷德兰兹(Redlands)摇动拳头,并附上一个说明性的轶事:几乎所有对Spatial Analyst的栅格API的API调用(当时)都将因通用COM失败而出现“未指定错误” “如果出了什么问题。急于解决问题,我最终将strace连接到ArcGIS.exe,并掩埋在系统调用中,发现(打鼓声)有用和详细的1980年代错误消息正在被写入等效于/ dev / null的Windows。
– Dan S.
2011-3-27在17:16
#2 楼
大量数据。能够找到使用Web技术提取大量数据的正确方法一直是一个挑战。我们要么拥有大量数据,并且性能不佳,要么显示的数据更少,但是可能传达了错误的信息。#3 楼
我不是GIS开发人员;但是,我是GIS建模人员:挑战:
数据收集,聚合,分解,合并和拆分:我从各种来源获取数据不同的项目;最大的问题通常是获取同一地理宗地/区域的所有数据。我通常必须在每个数据集上使用上述几种技巧,以使项目具有连贯的样本。这会增加出错的可能性,并降低我们的精度。
我不是开发人员;我不是开发人员。我再说一次,我不是开发人员:当您可爱的人们谈论SOAP,SHAMPOO,REST,GIS-T索引等时,这对您来说意义非凡。对我来说,大多数是行话。我通常会经历较大的学习曲线或陡峭的爬坡才能完成一些简单的事情。
FOSS和专有软件之间的鸿沟:我喜欢QGIS和死后的方法;从字面上看,我在每台机器上都安装了它们;但是,当我要进行基于运输的分析时,我不得不求助于TransCAD或EMME2 / 3。每个带有所有铃铛的费用约为15,000美元。公平地说,如果有一个用于shp文件的networkx软件包,所有这些问题都可以解决。
多个学科的问题:我精通运输建模技术;但是,据人口统计建模所吸引,据我所知,我必须使用复杂的R工具来完成数据。因此,GIS问题是GIS是一个多学科的领域,很难靠自己生存。
缺乏完善的工具和软件,无法从图像土地利用到矢量土地利用:我预见工具将在未来发展分析GEOEYE卫星图像,并将其中的土地使用情况与矢量(已建成)数据库进行比较
有时,在Excel /“最喜欢的电子表格程序中执行操作会更快:在某些情况下,我想进行运输分析,抓取放入Excel中的数据,执行公式,然后将数据转储回去要快得多
无论如何我可能并没有正确回答你;我只是希望我精通它谈到GIS编程,所以我可以在GIS建模方面表现出色
评论
供shp使用的Networkx已存在,仅供参考,例如networkx.github.io/documentation/latest/reference/…有关矢量+栅格的信息,请参见PostGIS栅格扩展名trac.osgeo.org/postgis/wiki/WKTRaster
– ThomasG77
2013年6月9日19:12
+1最大的问题是可靠的数据源。许多州都会聘请大学实习生从事夏季工作,以收集道路和东西的坐标,并且通常根本不进行错误检查或审核(甚至没有样品的抽样检查),结果是,新泽西州交通运输部说:道路比Google和OSM所说的短500英尺。天哪
–不需要
17年1月6日在21:44
#4 楼
最重要的事情,通常是我经历中最难的事情,是:为工作获取正确的数据
以正确的投影显示(并具有全部各层都同意。)尤其是当它们来自不同的来源时,请设计一个可用的应用程序。摆弄很多钟声只会让用户感到困惑,这很容易而且很诱人。
我认为在发达国家,第1点会更容易,但这不是我的经验。
#5 楼
对我来说,最大的挑战是确定给定项目使用哪些工具。开源还是专有的? Python或.NET?基于Web还是台式机?对于不同的项目,我回答这些问题的方式有所不同,并且我相信人们会在此站点上询问所有这些问题。很多原因都归因于个人喜好,并试图弄清楚ESRI和Microsoft将来将支持什么。评论
对我来说,这将是最大的事情。
–内森·W
10年7月22日在22:05
这对我来说不太重要。尽管投资于自己的未来并避免“浪费的工作”符合开发人员的最大利益,但我认为,目标证明了手段是正当的,无论采用哪种技术,都是最佳选择。对要交付的内容有一个清晰的想法比如何实现目标更为重要。
–mwalker
2010年8月13日在17:39
#6 楼
我的问题全是关于马和水。在很多情况下,我们为客户开发和/或提供非常好的解决方案,但是无论解决方案多么精致,如果没有人花时间使用它绝对是没有用的。在某些情况下,我们已经能够通过使工作基于用户来缓解这种情况(调查问题,在开发之前谈论解决方案),但是在某些情况下,这还不够。#7 楼
我认为最困难的挑战是让管理人员了解GIS,而有些用户也不了解它。人们认为GIS就是在制作地图。地图是任何GIS努力的唯一成果。我无法告诉您我有多沮丧-那里的无知程度是巨大的,并且由关键决策者掌握。最终-我们是GIS的先驱专家和程序员-最终将成为管理人员,然后我们最终可以完成一些体面的GIS项目!
作为GIS程序员的另一件事-您必须了解很多不同的技术,包括Java,.Net,数据库,ESRI软件或其他供应商,例如MapInfo,网络,安全性,网络技术等。有时这几乎是不可能的工作!
#8 楼
与具有调查背景的人打交道,这些人不了解专业的软件开发技术和方法,但是由于他们自学了如何编码avenue / VB,因此,这就是全部。#9 楼
Vinko的答案中的第3名:设计一个可用的应用程序。
很容易并且很容易发出很多钟声和口哨声,这只会使
用户感到困惑。
我会整体投票回答,但事实上可用性只是他列表中的第三项,我认为前两项并不是那么具有挑战性。
可用性是我大多数问题所在,也是我花费大部分时间的地方设计/开发时间,弄清楚如何设计智能,有效的用户界面,但要保持直观,以免让用户感到困惑,例如:
如何调整交互式地图的样式(并选择图层)以显示相关信息,并避免显示太多数据时经常出现的混乱情况(例如,通过自动聚合点要素);我知道这是制图学多年来一直试图解决的问题,但是问题只会随着数字/交互式地图而变得更加严重
如何根据用户的查询/功能选择自动定位地图视图
突出显示“选择”的特点 - 你展会的亮点只是简单地说,有它突出了全时选择一个功能,你未高亮时选择表(或列表)失去焦点...如何突出两个所有查询表和该表中所选行的结果(没有太多的切换按钮)
在图层或要素列表中显示其他信息,例如图层的可见性/适用的样式/几何类型,要素的状态/类别...如果在同一列表中显示了不同的要素类型,则情况将变得更加复杂(我猜这就是Google和Bing Maps对搜索进行大量过滤的原因结果)
高效编辑:捕捉,关闭多边形,添加/移动/删除点,而无需使用大量工具栏按钮。
如何设计(和实现)用于几何查询的用户友好的查询界面,以及更具挑战性的包括属性和几何的查询界面;
如何设计类似于剪贴板的要素/几何图形,以避免用户不得不连续从地图上“拾取”要素以用于查询,编辑...
>
我的感觉是,GIS在可用性方面是一个特别具有挑战性的领域,因为:
位置是任何信息的通用且通常是最自然的上下文,因此总是有太多信息无法显示
将信息显示在地图上,很容易低估用户界面中非GIS部分的重要性
行业传统上忽略了GIS的可用性方面软件,他们之所以放弃,是因为数字地图被视为技术性行业,学习曲线缓慢,而且要学习的概念比如何使用界面要困难得多。这意味着,任何试图为非专家设计GIS界面的人都必须发明自己的原理,这注定会造成混淆(一个很好的例子就是Google的“我的地图”或Bing Maps的“我的位置”)
#10 楼
基于Web的GIS开发面临的最大挑战之一是如何交付数据以及以某种方式可以从交付数据中获得多少效率。最大的障碍是很难为需要人工调整的内容编写代码。您很少看到大规模使用矢量数据的一般化技术。大多数时候,您必须调整比例范围才能打开和关闭图层。#11 楼
这个问题出现在我的google搜索中以解决GIS方面的挑战时,我想在这里做出自己的贡献。我觉得与此相关的另一个链接是这篇论文。
总结了这里所说的话和我的观点,我认为最大的挑战(不分先后)是:用户界面:使用大量的用户界面选项,对于开发人员来说,优化产品以适应所有设备是一项挑战。触控式,台式机与可穿戴式。戈尔(Gore)提出的DE的构想是未来的发展,它具有带显示屏的可穿戴式头戴式耳机,带有方向控制的手套和语音识别功能。
标准化:通过数据存储和检索的标准,我们可以将地理数据库保存在云中,并允许在运行中提取信息,从而可以使GIS浏览和使用变得更加顺畅。
数据使用:决策者总是需要时间。如果有一种工具可以帮助他们,那么它应该以一种平稳,便捷和快速的方式来完成。 GIS在这方面似乎还没有交付,这就是为什么它仍不是流行语的原因之一。
数据:数据多变,分散且嘈杂。即使对于在实时GIS上有明确动机的组织,数据的聚集对于设想输入仍然是一个很大的障碍。
共同努力:GIS是多学科的。每个孩子都知道。在第一张幻灯片中,管理层已意识到这一点。尽管这样的多学科,多部门的项目很少。
#12 楼
在编码方面,我觉得我在解决方法上浪费了太多时间。对于预测,我花了几个月的时间来理解过程和数学,因为我认为关于该主题的出版物很少。关于该主题的EPSG和OGC文件确实使我有所了解,即使它们有时有时互为副本,但经过几读。作为独立开发人员,我最大的问题是,即使到现在,我还是不得不为需要专门从事医疗,工业甚至简单的Web应用程序开发工作的人们绊倒。随着GIS行业的发展,似乎几乎不可能找到进入市场的方法。#13 楼
我是GIS技术的完整初学者,可以随时进行查找。而且由于我的资金有限,所以我尽量避免使用任何ESRI产品,而完全使用开源工具来完成任务。这么说,到目前为止,对我来说最困难的事情都与收集有关数据。关于操纵和显示数据的文章很多,并且有许多工具可以使您的生活更轻松。但是,在收集数据方面,我仍然处于黑暗之中。
我不知道专业人员如何查找和收集数据。有人告诉我,有一种比data.gov和google更容易获得数据的方法。
评论
大多数我们不得不从供应商那里购买,这些供应商会进行实际的地面调查并从其他来源进行转换。在第三世界,从政府公开获取数据是PITA
–德夫达塔(Devdatta Tengshe)
2010年8月13日在2:28
#14 楼
除非早期仅由工程师,建筑师或科学界来对待GIS,否则GIS世界正朝着普通用户扩展。在为普通用户完成GIS应用程序的情况下,挑战是适当地混合使用各种技术,其中GIS被更多地视为一项技术(在这种情况下,对GIS技术了解很少的开发人员就足够了)。但是,如果该应用程序是为专业社区设计的,则挑战更为复杂,因为除了需要使用连接技术来搜索现有算法来满足要求之外,否则我们将不得不开发这些算法。在这种情况下,应由工程师和开发人员共同负责。#15 楼
您可能不幸被迫与已经转变为软件开发人员的GIS分析师合作。很容易期望有能力的软件开发人员了解GIS概念,并让他们通过API来解决问题,并且通常不需要太多帮助。聘请GIS分析师并期望他们从事软件开发并非如此。
充其量结果令人尴尬。如果您有与糟糕的开发人员一起工作的经验,那么想象一下,比最糟糕的程序员开发的任何代码都更糟糕。
您可能为之工作的一些公司没有得到这样的帮助。
评论
@emptyset:我是成为开发人员的地理学家。我认为我的结果充其量不会令人“尴尬”。我比其他具有IT背景的同事拥有更多的开发技能-更好地理解和使用OOP概念,数据库概念和规则等。当然,我不同意您的回答:P
–乔治·席尔瓦(George Silva)
10年7月22日在19:36
@George:我并不是说您不是这么说的,只是指出要成为一名出色的开发人员,您必须知道自己的能力。至少我尝试。
– Vinko Vrsalovic
2010年7月22日在20:20
+1在很多情况下,我被要求“纠正漏洞”,由一位或多位分析师撰写,en.wikipedia.org / wiki / Big_ball_of_mud。一些最糟糕的代码是由一些最聪明的分析师编写的。聪明的人常常没有意识到简单的美。往往是管理方面的错误-分析人员可能会意识到重构的价值,但无法证明花时间更改没有中断的代码是合理的。
– Kirk Kuykendall
10年7月23日在18:23
对于这个推论,您可能很不幸无法与被迫以GIS专业人员身份工作的软件开发人员一起工作。我非常警惕来自任何领域的任何人,只要在他们进入GIS时就将它们弄清楚。我是一位研究开发的分析师,我完全希望并希望人们警惕我的代码。任何觉得自己在GIS方面做得很好的开发人员,可能都做不到。 :-)
–马特·威尔基
2010年7月23日在23:17
-1-非常笼统的陈述,证明是虚假的,而且令人反感。正如Matt W所暗示的那样,通常让GIS专家来进行编码比其他方法更好,因为与GIS相比,有太多资源可以帮助您学习编码和实现最佳实践。
– dmbrubac
10年8月13日在15:26
评论
我喜欢这个讨论。我知道它是旧线程,但是信息是GOLD。我在Esri工作,担任开发人员产品的产品经理。我负责ArcGIS Runtime SDK(Java,Android,Qt)和ArcObjects SDK for Java。首先,我可以体会这种痛苦。第二,我想听听Web API和ArcGIS Runtime API是否有助于减轻使用平台的痛苦,或者只是在一般情况下。我想处理大量数据仍然是一个挑战,但是现在情况会变得更好……现在五年之后?在线和门户网站的服务都越来越强大。是t您好Eric,欢迎来到GIS.SE。很高兴看到软件公司的员工参与社区活动。我们这里的讨论论坛更少,而更具体的问答。您可能想查看游览。我们确实有一个聊天用的对话,尽管它并不常用。您也可以看看我们的标记系统。使用它,您可以磨练特定主题最近的问题活动,例如您提到的API和SDK。
同样欢迎您来到GIS SE Eric!当您四处浏览该站点时,我希望您能够从讨论论坛中快速了解Stack Exchange的全部内容,以及其侧重于问答的格式有何不同。正是我希望ArcGIS讨论论坛能够在最近的大修中成为如此。但是,请不要在早期的问答中判断它的价值,尽管它很受欢迎,但这并不是用户可以如何来到这里寻找答案的一个很好的例子,几分钟之内就可以识别出相同的问题并阅读其答案而无需消化来回的讨论。