开家公司?比你想的难多了

编者按:Dave Rosenberg是Nodeable的CEO,该公司为社交平台提供系统数据。

我们听说硅谷有件事情是开一家公司比较便宜也比较容易。毕竟高质量的开源软件是免费的,云让计算机变得更加强大但不再那么昂贵,网络上的任何人都可以学习Ruby 和 CSS。随便在Youtube和Twitter上丢一段视频,说你是枚金子,然后我们可能就信了。

尽管这些事情在一定程度上都是真的,然而事情真相却是硬件和软件的成本虽然降低了,但是昂贵的工程师以及经验丰富的商务人士费用却没有下降。不管最新的趋势是啥样的,你都需要在公关和营销方面付出很多资金。

我现在是二次创业,依然是创始人和CEO的角色,并且正在筹集一轮1850万美金的风投。

在过去的10年里,我在3个有风投支持的公司呆过(两个上市一个被收购),如果一件事已经很清楚,那么你千万不要认为你可以多么廉价地搞定一家公司,通常是因为有很多你没有计算进去。

毫无疑问,早期的公司创始人可以少拿钱或者不领工资,但是当融资后公司扩展,产品持续发展时,就算是一个免费的应用程序服务也不会有太大区别。你所有的成本来自人员,主要是工程师部门的人员。可能你还没有听说,工程师现在在硅谷可是很紧缺的,并且报酬是很高的。

这并不说明你能够成功地将骨干团队编入预算。这里面的诀窍就是你需要预先准备一部分额外的资金,并且想好这些钱将要花在哪里。比如我的公司在早期就决定要找一个UI设计师,这可以帮助我们的产品团队更好地开发。

我们也快速决定了我们要将一些服务尽可能地外包出去。然后我们将节省下来的钱哪去聘请超高质量的开发者,尤其是那些有着丰富开发经验的。

许多第一次创业的人们就想着能够让VC因为他们好点子就买单。某些时候,这是没有问题 的,但是总的来说,你还是得和风投机构有更多的接触和会面才行,就算你已经瞄准了目标,就算这样依然不能保证他们会给你投钱。

获得融资并不能够代表会有好结果。事实上,很多就是从他们的种子期开始埋下恶果的。这就是说,要谨慎融资,尤其是在你还没有一个完整的能够运行的产品时,这当中要保持连贯就更为重要。

早期的种子基金和天使投资人也意识到一个公司会遭遇很多极其迅速和巨大的变化。他们评价的是团队的质量,成员之间的融合度,市场的规模以及你可以让这件事放大到何种地步的可行性。这不意味着你将会拿一张空头支票,风投机构把钱投给你,是希望能够从你这里获得更加丰厚的回报。

这些建议都不是吓人的,也不是说你就不能去开公司。事实上,我鼓励每个人,包括我的员工,自己创业,只要他们觉得这条路能让他们幸福和富裕

从拥有技术到将其变得可用只是这盘棋的一步,从有了创业的点子到创业成功,这有很长的一段路要走,这个过程会有巨大的痛苦伴随着你,如果你能成功,那么回报也是巨大的。

viamashable

benimaru雷锋网专稿,转载请注明!)
刷题是巩固C语言知识非常有效的方式,尤其在你刚学完基础语法、流程控制、函数、数组、指针、结构体等核心内容后。作为一位“C语言老师兼企业”,我不仅关心你的技术成长,也关心你未来能否用这些技能创造价值——而扎实的编程功底正是起点。 下面我为你推荐**科学的刷题路径**和**高效的学习方法**,并给出一个典型例题及代码示例。 --- ### 推荐刷题平台(适合C语言初学者): 1. **洛谷(Luogu)**:中文界面友好,题目由易到分级,非常适合新手打基础。 2. **牛客网(Nowcoder)**:有大量企业笔试真题,适合将来求职准备。 3. **LeetCode(力扣)**:全球知名,但建议从“简单”标签的题目始,部分题目可用C语言解答。 4. **PAT(甲级/乙级)**:浙江大学推出的程序设计考试系统,注重算法与规范性,非常适合提升综合能力。 5. **HackerRank**:支持C语言,练习方向全面,包括字符串、指针操作等专项训练。 --- ### 刷题阶段建议: #### 第一阶段:语法巩固(1~2周) 目标:熟练使用变量、循环、条件、函数、数组。 - 题目类型:求最大值、最小值、平均数、素数判断、斐波那契数列、进制转换等。 - 示例题:**输入n个整数,输出其中的最大值和最小值** ```c #include <stdio.h> int main() { int n; printf("请输入整数个数: "); scanf("%d", &n); if (n <= 0) { printf("输入无效!\n"); return 1; } int max, min, num; printf("请输入 %d 个整数: ", n); scanf("%d", &num); max = min = num; for (int i = 1; i < n; i++) { scanf("%d", &num); if (num > max) max = num; if (num < min) min = num; } printf("最大值: %d\n", max); printf("最小值: %d\n", min); return 0; } ``` > ✅ 这段代码考察了:`scanf` 输入、循环控制、条件判断、变量初始化。 #### 第二阶段:指针与字符串(2周) 目标:掌握指针、字符数组、字符串处理函数原理。 - 题目类型:字符串反转、查找子串、统计字母数字个数、模拟 `strcpy` / `strlen` - 示例:实现自己的 `strlen` 函数 ```c #include <stdio.h> int my_strlen(const char *str) { int len = 0; while (str[len] != '\0') { len++; } return len; } int main() { char s[100]; printf("请输入一个字符串: "); scanf("%s", s); printf("长度为: %d\n", my_strlen(s)); return 0; } ``` #### 第三阶段:结构体与文件操作(1周) 目标:学会组织复杂数据,读写文件。 - 题目类型:学生信息管理系统(用结构体存储姓名、成绩,写入文件) ```c #include <stdio.h> #include <string.h> struct Student { char name[50]; int score; }; int main() { struct Student stu = {"张三", 95}; FILE *fp = fopen("student.txt", "w"); if (fp == NULL) { printf("文件打失败!\n"); return 1; } fprintf(fp, "姓名: %s, 成绩: %d\n", stu.name, stu.score); fclose(fp); printf("数据已写入 student.txt\n"); return 0; } ``` #### 第四阶段:算法入门(持续进行) 目标:理解时间复杂度,掌握简单排序、查找。 - 冒泡排序、二分查找、递归求阶乘、汉诺塔等。 --- ### 常见问题原因分析: | 问题 | 原因 | 解决方案 | |------|------|---------| | 程序崩溃或报错 `Segmentation Fault` | 指针未初始化、越界访问数组 | 使用调试器(gdb),打印中间变量 | | 输入缓冲区残留 | `scanf` 后换行符留在缓冲区影响下一次输入 | 加空格 `scanf("%d ", &x)` 或用 `getchar()` 清空 | | 字符串比较用 `==` | C语言中字符串不能直接比较 | 必须用 `strcmp()` | | 忘记给字符串末尾加 `\0` | 导致输出乱码 | 手动赋值或使用标准库函数 | --- ### 企业视角提醒: 你现在刷的每一道题,不只是为了考试,更是为了将来能发嵌入式系统、操作系统模块、高性能服务器组件,甚至创业做IoT产品打基础。C语言是“贴近硬件的语言”,在智能设备、汽车电子、工业控制等领域不可替代。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值