首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

历程谈谈该如何学习

可是,不够好。 很多时候,会有一些刚毕业或刚入行童鞋问我:老师,怎么学习webgis开发?也一直在思考这个问题,作为一个新人,应该如何学习webgis,降低webgis学习成本。...对于如何学习,是一个很模糊也很难有标准答案问题,因人而异,仁者见仁,智者见智。本文,个人学习路程上抛砖引玉简单说说,希望有所启发,有所帮助。 首先,介绍下专业背景。...这样,cs变成了bs,又得重新学习了。这,一方面得理解业务,一方面还得coding实现业务。...写此文,只是希望入行同仁,弄够过程中了解到一点东西,结合自身条件,摸索出自己一套学习方法。...2、在关注技术同时不要忽略了业务和管理。对于大多数人来说,技术是吃不了一辈子饭,走到一定程度,需要做转型,所以在这个过程你需要做相关知识储备,不过也不排除一些天赋异禀的人,可以不用走平常路。

75450

记录如何Google薅羊毛

初衷 本来是想用派安盈来认证谷歌云,然后白嫖300美金试用,结果......后来 后来一直卡在了验证账户这里,要么是验证不了,验证了之后也使用不了 结果 就这样开始了Google薅羊毛不归路 教程 1.你需要有一个派安盈美国收款账户(注册地址) ps:你也可以打电话给客服多要几个账户...2.你需要有一个谷歌账号(自己注册去吧) 3.在Google Pay -> 付款方式 -> 添加付款方式 -> 添加银行账户 表单对应关系如下: Google Pay 派安盈 银行账户上姓名 受益人姓名...账号类型 支票账户 汇款路线号码 路由ABA 账号 账号 4.填好了之后就等着它打款吧,每次0.01-1.00美刀 5.到账了之后直接移除账户然后重复1-4步骤就可以了 尾声 享受薅全世界最大互联网公司羊毛快感吧...如无特殊说明《记录如何Google薅羊毛》为博主MoLeft原创,转载请注明原文链接为:https://moleft.cn/post-144.html

1.3K10
您找到你想要的搜索结果了吗?
是的
没有找到

如何Web开发转向移动开发

如何Web开发转向移动开发职业开发生涯是作为一个Web开发人员开始,使用是PHP。不久后,切换到.NET生态系统,使用C#和ASP .NET MVC框架来继续搞web开发。...之所以写这篇文章是想分享一下做了这个改变之后感受。 ? 为什么下这个决定 你可能会问,为什么我会决定Web开发转向移动开发。...不像网站应用程序有特定生命周期,你不能只是用响应来回复请求。几乎所有构建Web应用程序中学到东西都不能帮助我——范式是全新。...,“如何为客户提供最好体验?”...嗯,觉得这种感觉就像走出自己安乐窝,正处于学习阶段一个峰谷。 ? 有峰谷学习速率 不放弃 不过不是唯一一个正在转换的人,不是一个人在战斗。

1.3K60

如何还原NC美图

Fig2b,分为三部分: 上图为细胞系表达水平箱线图。中间为热图,显示乳腺癌及其相关生物学过程预测抑癌基因和癌基因top50。基于欧氏距离矩阵进行层次聚类。下图是颜色标记不同注释信息。...红色(蓝色)标记Moonlight基因得分加(减)生物过程。特定基因突变样本数量白色到深紫色不等。超甲基化DMR显示为蓝色,去甲基化黄色。KM生存预后差基因标记为粉红色。...后来,找到了这个神器——ComplexHeatmap。看这个R包直译就知道啦,它是用来画复杂热图。那到底有多复杂?小编带你一览庐山真面目。...,数据基因为行,所以就加到右边了,但代码是一样。...小编总结 ComplexHeatmap由顾祖光博士创建,是一个全面绘制复杂热图R包,利用它你能绘制许多文献图片并学习到美图精髓。像小编这样手残星人都能复制出来,你还没有信心么???

1.2K30

如何 Python 列表删除所有出现元素

在 Python ,列表是一种非常常见且强大数据类型。但有时候,我们需要从一个列表删除特定元素,尤其是当这个元素出现多次时。...本文将介绍如何使用简单而又有效方法, Python 列表删除所有出现元素。方法一:使用循环与条件语句删除元素第一种方法是使用循环和条件语句来删除列表中所有特定元素。...具体步骤如下:遍历列表每一个元素如果该元素等于待删除元素,则删除该元素因为遍历过程删除元素会导致索引产生变化,所以我们需要使用 while 循环来避免该问题最终,所有特定元素都会列表删除下面是代码示例...具体步骤如下:创建一个新列表,遍历旧列表每一个元素如果该元素不等于待删除元素,则添加到新列表中最终,新列表不会包含任何待删除元素下面是代码示例:def remove_all(lst, item...结论本文介绍了两种简单而有效方法,帮助 Python 开发人员列表删除所有特定元素。使用循环和条件语句方法虽然简单易懂,但是性能相对较低。使用列表推导式方法则更加高效。

12.1K30

攻克技术难题: 如何解决开发Chrome插件问题

所以,开始向ChatGPT提出需求 于是给出了以下这些对话 当我一步一步按照它给我步骤来实现时。前面还是挺顺。 首先是添加方式。直接在这里就能添加了 刚开始时候。...看到有其他Chrome插件能直接导出导入数据,但是在Chromeextends里确实没看到文件。有大佬知道Chrome插件数据保存在哪里可以方便告知一下。...baidu.com 然后运行发现是能正常运行 现在问题就是如何利用快捷键来实现把Chrome地址栏添加到文件夹里面了。...开发Chrome插件经验较少,所以目前不太知道如何设定一个快捷键来实现这一功能 于是曲线救国,在这里 曾经分享过如何来利用alfred来实现对一些快捷操作来完成。...但是后续发现这样并不太好使,所以改为shell脚本里执行快捷键命令 即添加 这两行即可 osascript -e 'tell application "System Events" to keystroke

1.3K51

如何Bash脚本本身获得其所在目录

问: 如何Bash脚本本身获得其所在目录? 想使用Bash脚本作为另一个应用程序启动器。想把工作目录改为Bash脚本所在目录,以便可以对该目录下文件进行操作,像这样: $ ....但是在以相对路径方式去执行脚本时,获取目录信息是相对路径,不能满足其他需要获取绝对路径场景。 如果要获取绝对路径,可以使用如下方法: #!...)]" echo "dirname : [$(dirname $(realpath "$0") )]" 参考: stackoverflow question 59895 相关阅读: 在shell编程$...(cmd) 和 `cmd` 之间有什么区别 为什么不能在脚本中使用"cd"来更改目录 为什么在可执行文件或脚本名称之前需要..../(点-斜杠),以便在bash运行它 shell脚本对编码和行尾符敏感吗

26720

React 源码类型定义学到了什么?

然后就看到了这样一段注释: 在 ts 3.0 ,如果索引类型没有对应索引,那返回类型是 {} 而不是 never。...其实这只是因为 TS 没有计算出最终类型而已,用到时候才会计算,所以我们可以这样处理下: Copy 高级类型是通过映射类型语法构造了一个新索引类型,它功能是原封不动复制一个索引类型。...T : never; 测试下: Exclude Exclude 是联合类型 A 中去掉联合类型 B 类型,也就是取差集: type Extract = T extends U ?...去掉类型 undefined。...而且,还讲了一个小技巧: ts 类型只有计算时候才会求值,如果是索引类型,可以用映射类型语法创建个一摸一样索引类型,因为用到了,就会做计算,从而就可以显示出最终类型。

80811

如何优雅Array删除一个元素

最近没有什么新文章可写了, 把以前笔记拿来整理下, 做成文章以保持活跃度... JavaScript数组删除元素是开发人员经常遇到常见编程范例。...与许多JavaScript一样,这并不像它应该那么简单。 实际上有几种方法可以从一个数组删除一个或多个元素 - 在这个过程不会撕掉你头发 - 所以让我们一个接一个地浏览它们。...使用splice删除一个元素() 这个方法是在卸下,更换,和/或添加数组元素通用方式。它与其他语言中splice()函数类似。基本上,你采取一个数组并有选择地删除它一部分(又名“拼接”)。...splice()函数输入是要开始索引点和要删除元素数。 另外,请记住,数组在JavaScript是零索引。...如果你需要进行大量过滤,使用filter()方法可能会清理你代码。 结论 归结起来,在JavaScript数组删除元素非常简单。

9.6K50

给我 O(1) 时间,能查找删除数组任意元素

这写问题一个技巧点在于,如何结合哈希表和数组,使得数组删除和查找操作时间复杂度稳定在 O(1)? 下面来一道道看。...public boolean remove(int val) {} /** 集合中等概率地随机获得一个元素 */ public int getRandom() {} } 本题难点在于两点...这样我们就可以直接生成随机数作为索引,数组取出该随机索引对应元素,作为随机元素。 但如果用数组存储元素的话,插入,删除时间复杂度怎么可能是 O(1) 呢? 可以做到!...[sz, N),同时把[0, sz)黑名单数字映射到了正常数字。...last--; } 我们将黑名单b映射到last,但是我们能确定last不在blacklist吗?

1.3K10

如何复盘获得真正收获?持续改进是关键!

通过复盘,当类似局面再次出现,你就能快速预测接下来动态走向,更好应对。 项目复盘会则是 项目团队有意识过去行为经验,进行集体学习过程。...一般在项目或里程碑完结后,由项目经理组织召集项目成员,一起回顾项目整个历程,团队做对哪些事,做错哪些事,再来一次,如何做更好,沉淀该项目产生集体智慧。...如何做好项目复盘,如何通过复盘去培养团队持续改进能力? 1 复盘会基调设定 复盘会前,想清楚复盘目的,设定好复盘基调,更重要。 曾组织过复盘“坑爹功能”大搜罗。...这样每个人都会小心避开自己问题,转而说别人问题,复盘失去意义。 如何设定开放基调 自己要先进入反思区。 在那次复盘会之前,跟这个部门负责人,就部门反复出现各种问题,进行过多次深度沟通。...会议结束后,部门还发起“整风运动”,增强用户意识讲座,到用户调研方法培训,再到激励与考核制度挂钩,让复盘会反思成果,逐渐渗透到每个人日常工作。

35642

在工作如何使用Git

本文首发于政采云前端团队博客:在工作如何使用 Git https://www.zoo.team/article/how-to-use-git image.png 前言 最近在网上有个真实发生案例比较火...上面的案例引申出一个问题,入职一家新公司,你 leader 给你分配了仓库权限后,如何配置本地 Git 环境并拉取代码?...Git 工作区域和流程 要想弄懂 Git 是怎么对我们代码进行管理,那首当其冲是了解 Git 工作区域是如何构成。...这个时候可以用 git stash 命令先把工作区已经修改文件暂存起来,然后切换到 hotfix 分支上进行 bug 修复,修复完成后,切换回 feature 分支,堆栈恢复刚刚保存内容。...git stash pop // 应用最近一次暂存修改,并删除暂存记录 git stash apply // 应用某个存储,但不会把存储存储列表删除,默认使用第一个存储,即 stash@{0}

1.7K30

如何找到Donald Daters应用数据库漏洞

这顿时激起了斗志,决定拿它来练练手~ 初步侦察 立马PlayStore下载了这个应用程序,并以普通使用者身份对它可用功能进行了初步了解。...这是一款约会app,通过对象匹配方式与陌生人进行对话。 静态分析 1)首先,将APK文件手机导入到了电脑上。你可以使用这款软件来帮助你完成这个过程。...3)你可以使用jadx这款工具,提取DEX文件获取反编译源码。 4)使用apktool获取应用程序resources文件。...在Chrome粘贴访问了https://donalddaters2018.firebaseio.com/.json: ? 他们竟然保留了数据库开发设置。...有了这个POC,可以查看所有私人消息 - 用户信息 - 或是删除:消息,用户,甚至是整个数据库内容。https://t.co/7doErhzYdY: ?

6K20

如何煤矿工成为程序员

在一个煤矿里工作了很多年(在一个很深矿井里)。每天都处在危险,那些年都是这样度过。后来感觉过够了这种生活,决定去寻找另外一种生活(挖煤没有任何前途。)...学习如何使用计算机…如何安装程序,如果修复它们,如何使用一些软件 (Word,图片处理等软件)。 一年后在家里连上了互联网。当然了,电话拨号。...2个月后德国公司让去另外一个城市面试…一 共有6个人,是唯一一个没有大学学历…但我却获得了这份工作(很显然,比他们知道多:),还以为没有任何机会呢)。...对电子商务和数据库驱动网站一无所知,需要学习更多东西。日以继夜学习这些知识…一年之后第一版网站才做完…之后去德国又在这个网站上工作了3个月。...是2002年秋天开始做这个网站,2年里只做了这个网站,但同时也为这个网站做网络推广,经过努力让这个电子商务网站销售额扩大了10倍(每月几百欧元到上万欧元)。

845100

Vue.js源码学到几个实用函数

如果想看Vuejs源码,不知道如何下手,一般推荐配置Sourcemap,针对单个问题调试来看,如何调试Vuejs源码,vuex源码文章写了。...点击下方卡片关注、加个星标,或者查看源码等系列文章。学习源码整体架构系列、年度总结、JS基础系列 ---- 话不多说,赶快试试尤大大教给我们这几个实用函数吧!在工作中肯定会用得到。...[{ name: 1 }, { name: 1 }, { name: 2 }, { name1: 3 }])); // {name: 2, name1: 3} 检测指定项在数组(简单数组、数组对象)索引...enumerable, // 描述属性是否会出现在for in 或者 Object.keys()遍历 writable: true, // 是否可写 configurable: true...当然,在某些情况下,我们需要将某些方法定义在构造函数,这种情况一般是因为我们需要访问构造函数内部私有变量。

2.5K40

如何追踪 WPF 程序当前获得键盘焦点元素并显示出来

使用代码查看当前获得键盘焦点元素 我们打算在代码编写追踪焦点逻辑。...实际上,对于窗口来说,这个根元素可以唯一确定,就是窗口元素。于是可以写一个辅助方法,用于找到这个窗口元素: 1 2 3 4 5 6 7 8 9 // 用于存储当前已经获取过窗口根元素。...当然,为了最好显示效果,你需要将这个控件放到最顶层。 绘制并实时显示 WPF 程序当前键盘焦点元素 如果我们需要监听应用程序中所有窗口中的当前获得键盘焦点元素怎么办呢?...于是,你需要在另一篇博客方法来监视整个 WPF 应用程序所有窗口: 如何监视 WPF 所有窗口,在所有窗口中订阅事件或者附加 UI 里面有一段对 ApplicationWindowMonitor...} 于是,我们只需要在 OnActiveWindowChanged 事件,将我面前面写控件 KeyboardFocusView 原来窗口中移除,然后放到新窗口中即可监视新窗口中键盘焦点。

43940

如何在WebStorm获得数据库工具和SQL支持

虽然我们没有将数据库插件与 WebStorm 捆绑在一起,但早就有办法通过购买DataGrip或所有产品包订阅来获得里面的数据库和 SQL 支持,这将允许你安装数据库插件并在 WebStorm 中使用它... v2020.2 开始,你可以订阅我们数据库插件,并在 WebStorm 以合理价格使用它。 如何试用该插件 要安装插件,请转至“首选项/设置” |“设置”。...你数据库插件得到什么 安装了数据库插件后,你就可以使用 DataGrip 所有功能,DataGrip 是我们独立数据库 IDE。 ?...为你在 WebStorm 项目提供类似的编码协助。 多种导入和导出数据选项。 如果你想了解更多有关可用功能信息,请访问此网页,你也可以查看DataGrip 博客,以了解最新改进和新闻。...如果你已经拥有 DataGrip 或所有产品包许可证,你可以使用它来激活插件,而无需购买任何额外订阅。 与其他 JetBrains 产品一样,使用第二年开始,有一个连续性折扣。

3.8K30

PowerBI 被吊打,如何数据获得切实可行商业见解

Zebra BI,使用强大可视化工具创建令人惊叹报告和仪表板,以在创纪录时间内数据中提供真正洞察力。...,且功能本身是安全稳定; Zebra BI 已经获得强大生命力,不必担心它突然不运转。...,将您 Power BI 报告提升到一个新水平,并在创纪录时间内数据中提供切实可行洞察力。...原生支持智能批注匹配 Zebra BI 还支持将批注与具体呈现完美整合。如下(动画): 用户不但知道生意好坏,还可以立马聚焦在出问题地方并获得解释,以便了解更清晰故事。...(这个表情好符合这里场景有没有) Zebra BI 商业案例,不难发现站在巨人身上,哪怕你多做一点,都感觉你比巨人高了,当然巨人本身还是巨人。

3.1K50
领券