This is not intended to be a political post – this post explains how the news media is attempting to manipulate you again. I despise seeing people misled and outraged by the news media, regardless of their political beliefs. Continue reading
Kind: Notes
short content: a post or status update with just plain content and typically without a title
Bible Study: Romans 7

- Romans overview (video): Part 1, Part 2
- Romans is structured as follows:
- Books 1-4: Revealing God’s Righteousness
- Books 5-8: Creating a New Humanity
- Books 9-11: Fulfilling God’s Promise to Israel
- Books 12-16: Unifying the Church
Romans 7: Creating a New Humanity
Context
- Romans 7 delves into the struggle between the desires of the flesh (human nature) and the desires of the Spirit (God’s influence) within a believer. Here are the key points:
- The Law’s Powerlessness:
- Paul starts by explaining that the Law (God’s commandments) has no power over a dead person (vv. 1-4). This analogy applies to our old sinful nature, which has been crucified with Christ (Romans 6).
- The Law exposes sin but cannot provide the power to overcome it (vv. 7-13).
- The Internal Conflict:
- Paul describes his own internal struggle between wanting to do good (following the Law) and being drawn towards sin by his flesh (vv. 14-23).
- He uses the metaphor of being a slave to sin (v. 14).
- A Longing for Deliverance:
- The chapter ends with a cry of desperation, yearning for deliverance from this internal conflict (v. 24).
- The Law’s Powerlessness:
- Important Points to Consider:
- This passage doesn’t describe the life of a victorious Christian, but rather the ongoing battle between the desires of the flesh and the Spirit.
- Romans 8 provides the answer to this struggle, highlighting the power of the Holy Spirit to enable believers to live according to God’s will.
- Interpretations:
- There are different interpretations on whether Romans 7 describes a believer before or after conversion.
- Some see it as Paul reflecting on his pre-Christian life.
- Others believe it represents the ongoing struggle even for Christians.
- Overall Message:
- Romans 7 offers a realistic portrayal of the Christian’s struggle with sin. It emphasizes our desperate need for God’s grace and the power of the Holy Spirit to live a life pleasing to Him.
- In Christ, we have also died to our obligation to follow the law of Moses. Paul makes clear, though, that the law is holy and good because it reveals to us just how sinful we are.
- Paul describes how his failed attempts to follow the law convinced him more fully of his need to be delivered from his sinfulness by God through faith in Christ.
Notes
- We are supposed to be dead to sin – we should try to be free from sin. When you give your life to Jesus you should try very hard not to sin (although it’s impossible for man to avoid all sin).
- We are DEAD to sin… So why do we live in sin?
- We don’t have an excuse.
- We CAN avoid sinning…. but we typically do not
- v1-2: as long as man lives, the LAW has dominion
- In a marriage, you are bound by law to the covenant
- If one or the other dies, the other is free from that covenant
- v3: Once the husband dies, the wife can remarry
- v4: We died to the law. We now have a covenant with God in Christ.
- v5: We have become dead to the Old Covenant (Moses’ laws).
- When we were controlled by our old nature, sinful desires were at work within us, and the law aroused these evil desires that produced a harvest of sinful deeds, resulting in death.
- v6: We have been released from the law, for we died to it and are no longer captive to its power. Now we can serve God, not in the old way of obeying the letter of the law, but in the new way of living in the Spirit.
- We are now a slave to God and can serve in the newness of the Spirit and not of the old law.
- Galations 2:18: Rather, I am a sinner if I rebuild the old system of law I already tore down.
- v7: Well then, am I suggesting that the law of God is sinful? Of course not! In fact, it was the law that showed me my sin. I would never have known that coveting is wrong if the law had not said, ‘You must not covet.’
- v8: But sin used this command to arouse all kinds of covetous desires within me! If there were no law, sin would not have that power.
-
- Before the 10 Commandments there was no law against coveting.
-
- v12: But still, the law itself is holy, and its commands are holy and right and good.
- The law is not sinful. We should not continue to sin. We are supposed to be dead to sin.
- If we’re not careful we can fall back into sin.
- v13: But how can that be? Did the law, which is good, cause my death? Of course not! Sin used what was good to bring about my condemnation to death. So we can see how terrible sin really is. It uses God’s good commands for its own evil purposes.
- v14: So the trouble is not with the law, for it is spiritual and good. The trouble is with me, for I am all too human, a slave to sin.
- v15: I don’t really understand myself, for I want to do what is right, but I don’t do it. Instead, I do what I hate.
- v16: But if I know that what I am doing is wrong, this shows that I agree that the law is good.
- v17: So I am not the one doing wrong; it is sin living in me that does it.
- We must be disciplined and try hard not to sin.
- v18: And I know that nothing good lives in me, that is, in my sinful nature. I want to do what is right, but I can’t.
- v19 I want to do what is good, but I don’t. I don’t want to do what is wrong, but I do it anyway.
- v20: But if I do what I don’t want to do, I am not really the one doing wrong; it is sin living in me that does it.
- v21: I have discovered this principle of life — that when I want to do what is right, I inevitably do what is wrong.
- v22: I love God’s law with all my heart.
- v23: But there is another power within me that is at war with my mind. This power makes me a slave to the sin that is still within me.
- v24: Oh, what a miserable person I am! Who will free me from this life that is dominated by sin and death?
- God calls us to live without sin but since we are human we will inevitably fall back into it – this is why we need Jesus.
- The less time we spend in the word and prayer the more likely we are to fall back into sin.
- v25: Thank God! The answer is in Jesus Christ our Lord. So you see how it is: In my mind I really want to obey God’s law, but because of my sinful nature I am a slave to sin.
- Galatians 5:16: So I say, let the Holy Spirit guide your lives. Then you won’t be doing what your sinful nature craves.
- If we walk in the spirit we are less likely to fall back into sin.
- Galatians 5:22: But the Holy Spirit produces this kind of fruit in our lives: love, joy, peace, patience, kindness, goodness, faithfulness.
- Galatians 5:24: Those who belong to Christ Jesus have nailed the passions and desires of their sinful nature to his cross and crucified them there.
- If we live in the spirit we will not fall back into sin. When we don’t walk in the spirit we will fall back into sin.
- Galatians 5:16: So I say, let the Holy Spirit guide your lives. Then you won’t be doing what your sinful nature craves.
Group Chat
- We are free in Christ – what does this mean?
- We are free to choose life in Christ instead of death in sin.
- Before being born again we know what is right and wrong but we didn’t have the “helper” of the Holy Spirit guiding us.
- Once the Holy Spirit is in your heart it can help you turn from sin.
- God cannot sin – He cannot choose to sin. In some ways this means we are more free than God. This is, however, not possible – we can never have more privilege than God.
- If we do good before we’re saved we’re still under the penalty of the original sin. This penalty has been taken away from us because of our faith in Christ.
- Before we’re saved we’re NOT free to live in Christ. After we’re saved we ARE free to live in Chirst and to do His bidding.
- This is what Paul is addressing in Romans 7.
- As we pursue Christ more and more, our tendancy to sin will be reduced.
Summary
- Two options to capture the essence of Romans 7 in one or two words:
- Internal Conflict: This highlights the internal struggle between wanting to do good and the pull towards sin described in the chapter.
- Law’s Powerlessness: This emphasizes the chapter’s theme of the Law’s inability to bring about true righteousness.
REST and gRPC: What To Use When
Recycling and some older guidance…. I hope this helps someone.
TLDR;
- When Should You Use REST?
- Most used for building microservices-based infrastructures.
- Any time you plan to build an app or a larger computer system that requires connecting microservices, REST is the most common choice.
- Best for externally-facing APIs.
- If you need standardized HTTP protocol, high-speed iteration, and multi-language microservices connected, then REST should be your main choice.
- Universal support with third-party tools, so are ideal for everything from apps to web services.
- Most used for building microservices-based infrastructures.
- When Should You Use gRPC?
- Best for building internal systems where tighter coupling is not an issue.
- Useful for connecting architectures that consist of lightweight microservices where the efficiency of message transmission in a multilingual environment is most important.
- When real-time communication is required.
- When used over low-power, low-bandwidth networks
- An IoT network would benefit more from gRPC than REST.
REST vs gRPC
-
- gRPC is a high-performance, binary, strongly-typed protocol using HTTP/2.
- gRPC is a high-performance, open-source framework developed by Google for efficient communication between services using a binary protocol (Protocol Buffers) and HTTP/2
- Protocol Buffers are the Interface Definition Language (IDL) used to describe service interfaces and payload message structures.
- gRPC is based upon the RPC (Remote Procedure Call) paradigm
- An RPC API request to delete a resource with the id of “2” might use the HTTP verb POST with a /deleteResource URL with query string of { “id”: 2 }
- gRPC supports bidirectional streaming since it uses HTTP/2.
- gRPC APIs use their own Protoc Compiler which enables you to create your own code.
- Protoc Compilers work in multiple languages and can be used in polyglot environments (groups of microservices can run on separate platforms and be coded in different languages).
- Protoc Compilers compile .proto files, which contain service and message definitions.
- Protoc Compilers support the following languages:
- gRPC is a high-performance, open-source framework developed by Google for efficient communication between services using a binary protocol (Protocol Buffers) and HTTP/2
- gRPC is a high-performance, binary, strongly-typed protocol using HTTP/2.
-
- REST is a simpler, stateless protocol using HTTP 1.1 with text-based JSON/XML messages.
- REST is a more established, text-based approach leveraging standard HTTP methods for building web APIs.
- REST follows the architectural constraints of the Representational State Transfer model.
- Standard HTTP methods are used with Uniform Resource Identifiers (URIs) to communicate requests and responses between a client and a server.
- Each URI describes a self-contained operation and contains all the information needed to satisfy the request.
- A REST API request to delete a resource with the id of “2” could use an URL with the HTTP DELETE verb: DELETE /resource/2.
- REST is limited to request-response communication patterns since it uses HTTP 1.1
- REST is a simpler, stateless protocol using HTTP 1.1 with text-based JSON/XML messages.
Characteristic | gRPC | REST API |
HTTP Protocol | HTTP 2 | HTTP 1.1 |
Messaging Format | Protobuf (Protocol Buffers) – binary | JSON (usually) or XML and others – text |
Code Generation | Native Protocol Compiler | Third-Party Solutions Like Swagger |
Communication | Unary Client-Request or Bidirectional/Streaming | Client-Request Only |
Receiving Data | 7 times faster than REST | 7 times slower than gRPC |
Sending Data | 10 times faster than REST | 10 times slower than gRPC |
Implementation Time | 45 Minutes | 10 Minutes |
Protocol Buffers vs XML/JSON
- XML/JSON
- Platform and language agnostic
- Messages are human-readable and communicate structured data
- Protocol Buffers
- Platform and language agnostic
- Not human readable but highly efficient
- Serializes and deserializes structured data to communicate via binary
- Uses a highly compressed format
- Much faster – focuses strictly on serializing and deserializing data
- Reduced message sizes
HTTP 1.1 vs HTTP/2
- HTTP 1.1
- The standard for communication on the web.
- Relays information between a computer (client) and a web server (server), which may be local or remote.
- Client sends text-based request and a resource (web page, PDF, message, etc) is returned from the server.
- Does not support streaming – request/response only.
- HTTP/2
- Supported by most modern browsers in addition to HTTP 1.1.
- HTTP/2 uses binary messages instead of plain text smaller packages, faster throughput).
- HTTP/2 reduces network delay through the use of multiplexing (enables multiple requests to fire simultaneously on the same connection, receiving requests back in any order).
- Supports 3 types of streaming:
- Server-side (long running process on server over a single connection – server updates client with progress and final result):
- A client sends a request message to a server.
- The server returns a stream of responses back to the client.
- After completing the responses, the server sends a status message (and, in some cases, trailing metadata), which completes the process.
- After receiving all of the responses, the client completes the process.
- Client-side (client sends multiple requests to server over a single connection, server sends back response when all requests are done):
- A client sends a stream of request messages to a server.
- The server returns one response back to the client. It (usually) sends the response after receiving all of the requests from the client and a status message (and sometimes trailing metadata).
- Bi-directional (chatty – controlled by the client):
- A client and server transmit data to one another in no particular order.
- The client is the one that initiates this kind of bidirectional streaming.
- The client ends the connection.
- Server-side (long running process on server over a single connection – server updates client with progress and final result):